在 Linux 上使用 Node 0.12.7 获取 "Unexpected reserved word"

Getting "Unexpected reserved word" using Node 0.12.7 on Linux

我在以下版本的 Linux 上使用节点 0.12.7 …

[davea@mydevbox Automate-04-01-2016]$ uname -a
Linux mydevbox.evo-text.com 2.2.8-35.46.amzn1.x86_64 #1 SMP Wed Mar 16 17:15:34 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

然而,当我尝试 运行 我的文件时,我得到了这个错误

[davea@mydevbox Automate-04-01-2016]$ node start.js 
Validation Complete
/home/davea/node_modules/selenium-webdriver/index.js:25
const builder = require('./builder');
^^^^^
SyntaxError: Use of const in strict mode.
    at exports.runInThisContext (vm.js:73:16)
    at Module._compile (module.js:443:25)
    at Object.Module._extensions..js (module.js:478:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)
    at Object.<anonymous> (/home/davea/Automate-04-01-2016/js/Optimus.js:2:17)
    at Module._compile (module.js:460:26)
    at Object.Module._extensions..js (module.js:478:10)

按照网上的一些随机建议,我添加了“-harmony”,但我仍然得到这个错误......

[davea@mydevbox Automate-04-01-2016]$ node --harmony start.js 
Validation Complete
/home/davea/node_modules/selenium-webdriver/builder.js:97
class Builder {
^^^^^
SyntaxError: Unexpected reserved word
    at exports.runInThisContext (vm.js:73:16)
    at Module._compile (module.js:443:25)
    at Object.Module._extensions..js (module.js:478:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)
    at Object.<anonymous> (/home/davea/node_modules/selenium-webdriver/index.js:25:17)
    at Module._compile (module.js:460:26)
    at Object.Module._extensions..js (module.js:478:10)

我该如何解决这个问题?

您需要升级到更新版本的节点(例如 v4.x 或更新版本)。

您可以找到 ES6/ES2015 各种节点版本 here 的兼容性。