【发布时间】:2018-05-09 19:42:01
【问题描述】:
我有以下两个可以在任何浏览器上运行的代码。
代码1:
let prices = [1, 2, 3, 4, 5];
let result = prices.reduce( (x,y)=>{x+y} ); // Reduce data from x to y.
console.log(result);
代码2:
let prices = [1, 2, 3, 4, 5];
let result = prices.reduce( (x,y)=>x+y ); // Reduce data from x to y.
console.log(result);
第一个代码不起作用,但第二个代码起作用。
为什么大括号 ({}) 会使其不起作用?它们不是隐式函数的一部分吗?或者这种 braceless 语法只是 reduce() 方法的独特之处?
【问题讨论】:
-
您需要明确提及“返回”。请参阅“函数体”和“返回对象文字”部分以了解有关箭头函数的更多信息。 [developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…