Node.js支持=> (箭头功能)

时间:2013-10-28 20:20:31

标签: javascript node.js

Node.js支持=>函数关键字别名已经?如果是,从哪个版本开始?如何启用此语言扩展?

(function() { console.log('it works!') })()

变为

(() => { console.log('it works!') })()

4 个答案:

答案 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)单独激活,但这是非常气馁的