仅供参考:我之前从未参与过NodeJS 我有一个小nodejs(5.2)scriptlet,在尝试运行它时,我收到此错误。 它看起来是因为它使用了较旧的javascript运行时/解释器,因为它没有采用三点符号。 如何检查ES / Javascript的版本并在我的系统上安装并切换到ES6(Fedora 23)。
/usr/lib/node_modules/canvas-data-cli/lib/logger.js:17 logIt(level,... args){ ^^^
SyntaxError:意外的令牌...... 在exports.runInThisContext(vm.js:54:16) 在Module._compile(module.js:375:25) 在Object.Module._extensions..js(module.js:406:10) 在Module.load(module.js:345:32) 在Function.Module._load(module.js:302:12) 在Module.require(module.js:355:17) at require(internal / module.js:13:17) 在对象。 (/usr/lib/node_modules/canvas-data-cli/lib/cli.js:4:14) 在Module._compile(module.js:399:26) 在Object.Module._extensions..js(module.js:406:10)
答案 0 :(得分:3)
检查node
版本:
node -v
我建议您使用nvm来管理节点版本。
从其github自述页面:
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.29.0/install.sh | bash
nvm install 5.2
nvm use 5.2
然后你可以正常使用节点,它将是5.2。
答案 1 :(得分:1)
节点5尚不支持休息运算符,没有特定的运行时标志。
您可以在以下位置查看适用于您的版本的支持表:https://kangax.github.io/compat-table/es6/#test-rest_parameters_basic_functionality
答案 2 :(得分:0)
如果您不想担心哪些版本的节点支持本机ES6功能,请使用Babel来转换代码。您也可以利用ES7功能。