2015-08-28 2 views
0

Как мне вызвать функцию без аргументов в CoffeeScript без парсеров?вызов функции без аргументов в CoffeeScript

fun = -> alert "Boo!" 

Я попытался fun. и (fun)

+3

Скобки являются необязательными, когда использование * недвусмысленно в контексте *. Когда это неоднозначно, просто напишите обычный синтаксис Javascript. – deceze

ответ

7
fun = -> alert "Boo!" 
do fun 

Это сокращенная синтаксис для вызова функций, которые объявляются не- место.

someVar = do -> #some code... 
+0

Спасибо, наконец, кто-то, кто на самом деле * знает * CoffeeScript –

+0

Обратите внимание, что вы, однако, не можете вызывать эту функцию позже, например 'someVar()' – Anthony

+0

someVar содержит результат функции. Если вы хотите функцию и результат, вы можете сделать: 'someVar = do fun = ->' – metalim

6

Вы должны написать fun()

Это так же, как вы делаете в JavaScript

Если вы пишете только fun, например, в foo=fun, CoffeeScript будет думать это просто переменная fun (потому что нет возможности различать вызов функции и простую переменную) ,

Вы также можете использовать аргументы внутри круглых скобок, с fun(arg), но «официальным синтаксисом» при вызове функции с аргументами является fun arg

+0

Я знаю это, но это неудовлетворительно –

+3

Что бы вы хотели? – edi9999

Смежные вопросы