如何告诉/更改nodejs Linux上的javascript版本

时间:2015-12-16 22:47:39

标签: javascript linux node.js

仅供参考:我之前从未参与过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)

3 个答案:

答案 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功能。