CoffeeScript中正确的函数定义语法是什么?

时间:2015-03-24 08:23:13

标签: syntax coffeescript

the official CoffeeScript website上,定义函数的语法是

square = (x) -> x * x

然而,在一些other websites上,我发现语法也可能是

square: (x) -> x * x

首选其中一个选项吗?

1 个答案:

答案 0 :(得分:3)

这两个选项之间存在巨大差异。首先,它们与函数语法无关,函数语法总是(x) -> x * x。它们与您正在使用的功能有所不同。

第一个选项定义局部变量square并将该函数分配给它。因此,之后您只需致电square(2)即可获得4。

第二个选项是创建一个javascript对象。如果这是某个函数的最后一行,那么这是它的返回值。必须将对象分配给某个变量,否则它将丢失:

functions = 
  square: (x) -> x * x

functions.square(2)