我正在使用node.js,在我的一个js文件中,我在“严格模式”下使用const。当试图运行它时,我得到一个错误:
SyntaxError: Use of const in strict mode.
这样做的最佳实践是什么?
编辑:
'use strict'
const MAX_IMAGE_SIZE = 1024*1024; // 1 MB
我正在使用node.js,在我的一个js文件中,我在“严格模式”下使用const。当试图运行它时,我得到一个错误:
SyntaxError: Use of const in strict mode.
这样做的最佳实践是什么?
编辑:
'use strict'
const MAX_IMAGE_SIZE = 1024*1024; // 1 MB
当前回答
这可能不是每个人的解决方案,但对我来说是。
如果您正在使用NVM,您可能没有为正在运行的代码启用正确的node版本。重新启动后,节点的默认版本变回系统默认版本。
在使用react-native工作时遇到了这个问题,它一直工作得很好。只需使用nvm使用正确的node版本来解决这个问题。
其他回答
自从提出这个问题以来,const关键字的草案已经成为ECMAScript 2015的一部分。此外,当前版本的Node.js支持不带——harmony标志的const声明。
以上所述,你现在可以运行节点app.js,使用app.js:
'use strict';
const MB = 1024 * 1024;
...
同时获得语法的好处和严格模式的好处。
在严格模式下使用const随Chrome 41发布。 目前,Chrome 41 Beta已经发布并支持它。
通常,当执行代码所针对的节点的版本比预期的要旧时,就会发生此错误。(即0.12或更高)。
如果您正在使用NVM,请确保您使用的节点版本正确。可在节点上查看兼容性。绿色代表严格模式下的const
我在另一个帖子上发现了类似的问题,并在那里详细地发表了我的答案
cd /
npm install -g nave
nave use 6.11.1
node app.js
这可能不是每个人的解决方案,但对我来说是。
如果您正在使用NVM,您可能没有为正在运行的代码启用正确的node版本。重新启动后,节点的默认版本变回系统默认版本。
在使用react-native工作时遇到了这个问题,它一直工作得很好。只需使用nvm使用正确的node版本来解决这个问题。