箭头函数“expression预期”的语法错误

我想转换这个代码:

var formatQuoteAmount = function (tx) { return Currency.toSmallestSubunit(tx.usd, 'USD'); }; var quoteAmounts = res.transactions.map(formatQuoteAmount); 

变成一个匿名的箭头function。 我写了这个:

 var quoteAmounts = res.transactions.map(tx => Currency.toSmallestSubunit(tx.usd, 'USD')); 

我在箭头处得到expression expected语法错误。 我查了这里的默认语法 ,似乎我的代码的语法是正确的。 任何想法可能是什么问题?

我有这个语法的工作:

  var quoteAmounts = res.transactions.map(function (tx) { return Currency.toSmallestSubunit(tx.usd, 'USD') }); 

但是我想把它作为一个单线,带有箭头function。

node v5.3.0上运行

编辑Node.js程序时, Webstorm报告了错误expression expected 。 在这种情况下,解决scheme是将语言版本设置为支持此function的版本。

在这里输入图像说明

以下是我为我所做的工作。 (1)如@ Joe23所选答案中所示,将JavaScript语言选项更改为ECMAScript 6

(2)closuresWebstorm项目/应用程序。

(3)导航到项目文件夹并删除其中的.idea文件夹。 我相信这是生成的文件夹webstorm来保持项目/应用程序的信息。

(4)我在webstorm中重新打开我的项目,错误消失了。

你的语法是正确的,并且Nodejs支持箭头函数,但是你没有默认启用它。

您应该在启动节点进程启用它时添加“–harmony”标志。