Node.js 是否已经支持 => 函数关键字别名?如果是,从哪个版本开始?如何启用此语言扩展?
(function() { console.log('it works!') })()
成为
(() => { console.log('it works!') })()
Node.js 是否已经支持 => 函数关键字别名?如果是,从哪个版本开始?如何启用此语言扩展?
(function() { console.log('it works!') })()
成为
(() => { console.log('it works!') })()
简而言之:是的,自 4.4.5 版以来,Node.js 中的箭头函数得到了相当好的支持。
完全正确的支持从版本 6 开始。最初的支持是在 v0.12 中引入的,但在 v4.0 变得更好之前,它非常不完整并且默认禁用。有关详细信息,请参阅 Node 的 ES6 兼容性表:http : //node.green/#ES2015-functions-arrow-functions。
您所指的语法是“箭头函数”语法。它是 ECMAScript 6 的一个特性,也被称为“和谐”。该ES6标准现在敲定,但发动机仍在执行它的新功能。
V8 现在支持箭头功能。Node 在 V8 引擎上运行,但 Node 将最新版本合并到其代码库中可能需要一些时间。
每当添加它时,它可能只能通过--harmony
命令行标志启用。
你可以关注这个问题:https : //code.google.com/p/v8/issues/detail?id=2700
目前(截至 2014 年 5 月 2 日)箭头功能已经实现并等待此功能将在 v8 中登陆:https : //codereview.chromium.org/160073006/
之后我们需要等待,直到带有箭头功能的v8版本被集成到Node.JS中。你可以在那里关注 Node.JS 更新日志:https : //github.com/joyent/node/blob/master/ChangeLog(搜索“v8:升级到......”)
kangax 的兼容性表可以让您及时了解 Node.js中当前可用的内容。
可以使用此页面上的说明启用实验性功能:
默认情况下,Node.js 上的所有运输功能都处于启用状态
暂存功能需要运行时标志:(
--es_staging
或其同义词,--harmony
)进行中的功能可以通过它们各自的和谐标志(例如
--harmony_destructuring
)单独激活,但这是非常不鼓励的