14

node v0.10.33下で矢印関数を使用しようとしUbuntu 14.04ています (ノードを--harmonyフラグ付きで実行しています) が、次のエラーが発生します。

console.log( [1,2,3,4].map(x => x*x) );
                          ^
SyntaxError: Unexpected token >
    at Module._compile (module.js:439:25)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Function.Module.runMain (module.js:497:10)
    at startup (node.js:119:16)
    at node.js:906:3
4

2 に答える 2

9

これは、フラグを使用してノード v0.12.x で機能するようになりました--harmonybabelまた、パッケージを使用してノードでアロー関数を取得できることにも注意してください。

http://babeljs.io/docs/using-babel/

アップデート:

Mike 'Pomax' Kamermans が正しく示しているように、--harmonyNode.js >= 4.x を使用する場合、フラグは必要ありません。Node.js での ES6 サポート状況の詳細については、 https: //nodejs.org/en/docs/es6/ を参照してください。

于 2015-04-22T15:41:33.587 に答える
5

ノードは、ハーモニー フラグがあっても、まだ太い矢印をサポートしていません。ソース

編集: 興味深い事実です。ES6 のサポートは、Node が io.js にフォークされた理由の 1 つです。ES6 の機能に関するページを確認してください。矢印関数のフラグが用意されていますが、使用しないでください。

于 2015-01-25T21:31:24.183 に答える