Node.js支持=>函数关键字别名已经?如果是,从哪个版本开始?如何启用此语言扩展?
(function() { console.log('it works!') })()
变为
(() => { console.log('it works!') })()
答案 0 :(得分:71)
简而言之:是,自4.4.5版以来,Node.js中的箭头函数得到了相当好的支持。
完全正确的支持从版本6开始。初始支持在v0.12中引入但是非常不完整,默认情况下禁用,直到v4.0变好。有关详细信息,请参阅节点的ES6兼容性表:http://node.green/#ES2015-functions-arrow-functions。
答案 1 :(得分:31)
您所指的语法是“arrow function”语法。这是ECMAScript 6的一个特征,也被称为“和谐”。 ES6 standard is now finalized,但引擎仍在实现其新功能。
The V8 now has arrow function support。 Node在V8引擎上运行,但Node可能需要一些时间才能将最新版本合并到其代码库中。
每当添加它时,它可能只能通过--harmony
command-line flag启用。
答案 2 :(得分:20)
您可以关注此问题:https://code.google.com/p/v8/issues/detail?id=2700
目前(截至02.05.2014)箭头功能已经实施并等待此功能将在第8版中落实:https://codereview.chromium.org/160073006/
之后我们需要等待,直到带有箭头功能的v8版本被集成到Node.JS中。您可以在那里关注Node.JS更改日志:https://github.com/joyent/node/blob/master/ChangeLog(搜索“v8:upgrade to ....”)
答案 3 :(得分:3)
kangax's compatibility tables可以让您了解Node中当前可用的内容。
可以使用this page上的说明启用实验功能:
默认情况下,Node.js
上会启用所有送货功能分段功能需要运行时标志:
--es_staging
(或其同义词,--harmony
)正在进行中的功能可以通过各自的和声标志(例如
--harmony_destructuring
)单独激活,但这是非常气馁的