Nik*_*age 19 javascript const jslint node.js ecmascript-6
我正在尝试使用node-jslint https://github.com/reid/node-jslint以保持我的代码清洁
我的nodejs脚本中有一个const,但是jslint说它不是有效的ES6代码
Unexpected ES6 feature.
const pdPersonsFilterId = process.argv[2]; // Line 10, Pos 0
Run Code Online (Sandbox Code Playgroud)
这是我在控制台中使用的命令
jslint --edition=latest index.js
Run Code Online (Sandbox Code Playgroud)
根据https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const,可以使用全局常量.
为什么jslint不认为此代码有效?
ruf*_*fin 19
JSLint对ES6很满意; 你必须让它知道你正在使用ES6.将es6指令添加到JSLint配置或文件顶部,并获利.
/*jslint es6 */
const pdPersonsFilterId = process.argv[2];
Run Code Online (Sandbox Code Playgroud)
现在你看到的警告就消失了.
第六版ECMAScript [ES6]可能需要一段时间才能达到普遍性.使用环境中未完全实施新标准的新功能将导致失败.这就是使用ES6功能时JSLint发出警告的原因.ES6的一些功能很好,因此JSLint将使用es6选项识别ES6的优点.随着新标准的实现变得更加稳定和更好理解,JSLint识别的特征集可能会增加. 转换到ES6完成后,将删除es6选项.[我的]
看起来很公平.所以你所看到的只是警告你,你所拥有的东西在不支持ES6的地方可能不起作用,因为现在很多地方都有.一旦ES6更广泛 - 或者如果你明确让Crockford知道你打算使用ES6 - 那么警告就会消失.(TJ的观点可能是,至少在Node上,现在是删除警告的时候了.; ^ D)