我正在使用node.js,在我的一个js文件中,我在“严格模式”下使用const。当试图运行它时,我得到一个错误:

SyntaxError: Use of const in strict mode.

这样做的最佳实践是什么?

编辑:

'use strict'
const MAX_IMAGE_SIZE = 1024*1024; // 1 MB

当前回答

自从提出这个问题以来,const关键字的草案已经成为ECMAScript 2015的一部分。此外,当前版本的Node.js支持不带——harmony标志的const声明。

以上所述,你现在可以运行节点app.js,使用app.js:

'use strict';
const MB = 1024 * 1024;
...

同时获得语法的好处和严格模式的好处。

其他回答

如果这发生在nodejs中,这是由于旧版本的nodejs。使用,更新节点

1)清除NPM的缓存:

sudo npm cache clean -f

2)安装一个名为“n”的小助手

sudo npm install -g n

3)安装最新稳定的NodeJS版本

sudo n stable

更新来自https://stackoverflow.com/a/19584407/698072的nodejs指令

更新节点后的一个重要步骤是将节点二进制文件链接到最新安装的节点版本

sudo ln -sf /usr/local/n/versions/node/6.0.0/bin/node /usr/bin/node  

自从提出这个问题以来,const关键字的草案已经成为ECMAScript 2015的一部分。此外,当前版本的Node.js支持不带——harmony标志的const声明。

以上所述,你现在可以运行节点app.js,使用app.js:

'use strict';
const MB = 1024 * 1024;
...

同时获得语法的好处和严格模式的好处。

cd /
npm install -g nave
nave use 6.11.1
node app.js

我最近遇到了一个类似的问题,并在这个问答中结束了。这不是OP寻找的解决方案,但可能会帮助其他有类似问题的人。

我使用PM2来运行一个项目,在一个给定的登台服务器上,我有一个非常旧的Node, NPM和PM2版本。我更新了所有内容,但是,我一直保持相同的错误:

SyntaxError:在严格模式下使用const。

我多次尝试停止和启动应用程序。也试着重新更新一切。毫无效果。直到我在运行pm2 start时注意到一个警告:

>>>>内存中的PM2已过时,请执行以下操作: >>>> $ pm2更新 内存中PM2版本:0.15.10 本地PM2版本:3.2.9

明白了!在运行pm2更新之后,我终于能够让应用程序按预期运行。不再有“严格模式下的const”错误。