ES6给出SyntaxError:意外的令牌)

时间:2016-02-10 10:27:10

标签: javascript node.js ecmascript-6 es6-promise arrow-functions

这是我的Node.js脚本:

pDownload("http://serv/file", "localfile")
  .then( ()=> console.log('downloaded file no issues...'))
  .catch( e => console.error('error while downloading', e));

function pDownload(url, dest){} // Yes empty, for now

在Node.js v0.10.25(Ubuntu 2015.10上的默认值)上执行时,我收到关于括号的语法错误:

/home/nico/main.js:2
  .then( ()=> console.log('downloaded file no issues...'))
          ^
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:902:3

我该如何解决?

1 个答案:

答案 0 :(得分:-1)

节点0.10中的V8版本不支持箭头功能。

您可以通过以下方式解决此问题:

  • 使用像Babel这样的代码将代码编译为ES5
  • 或使用更新版本的Node,例如5.x
  • 使用箭头功能

(谢谢James Allardice)