选用“胖”箭头=>
(相对于瘦箭头->
)的原因是与 CoffeeScript 兼容,两者非常类似。
指定参数:
() => { ... } // no parameter
x => { ... } // one parameter, an identifier
(x, y) => { ... } // several parameters
指定函数体:
x => { return x * x } // block
x => x * x // expression, equivalent to previous line
这些语句块表现得像普通的函数体。例如,需要用 return
返回一个值。如果只有一个表达式,那么这个表达式的值会被隐式返回。
注意,只有一个表达式的箭头函数省略了多少啰嗦的东西。比较:
let squares = [1, 2, 3].map(function (x) { return x * x });
let squares = [1, 2, 3].map(x => x * x);