Javascript jslint--edition=最新意外的ES6特性。常数

Javascript jslint--edition=最新意外的ES6特性。常数,javascript,node.js,constants,ecmascript-6,jslint,Javascript,Node.js,Constants,Ecmascript 6,Jslint,我试图使用节点jslint来保持代码的整洁 我的nodejs脚本中有一个常量,但jslint说它不是有效的ES6代码 Unexpected ES6 feature. const pdPersonsFilterId = process.argv[2]; // Line 10, Pos 0 下面是我在控制台中使用的命令 jslint --edition=latest index.js 根据这些参数,可以使用全局常数 为什么JSLLT不认为这个代码是有效的?< /P> < P> 编辑:2020:

我试图使用节点jslint来保持代码的整洁

我的nodejs脚本中有一个常量,但jslint说它不是有效的ES6代码

 Unexpected ES6 feature.
const pdPersonsFilterId = process.argv[2]; // Line 10, Pos 0
下面是我在控制台中使用的命令

jslint --edition=latest index.js
根据这些参数,可以使用全局常数


为什么JSLLT不认为这个代码是有效的?< /P> < P> <强>编辑:2020:< /Stime> AS,正如在答案中所预测的,JSLint已经放弃了<代码> ES6要求——看起来像

也就是说,
es6
不再是有效的JSLint选项。OP今天的代码将如本文所述:

/*jslint browser */
/*global process */
const pdPersonsFilterId = process.argv[2];
但是,如果您认为您处于OP的情况,请确保您用于lint文件的任何进程都没有使用较旧版本的JSLint。有些工具附带过时的版本,或者您的构建脚本可能会维护较旧的版本,以避免破坏遗留代码。如果您处于这种情况,下面的修复程序应该可以工作

但是,如果您知道您的JSLint版本比2017年10月9日更新,并且出现es6错误,请打开一个新的StackOverflow问题


对于JSLint的原始问题/旧版本。。。 JSLint对ES6很满意;您只需让它知道您正在使用ES6。将
es6
指令添加到JSLint配置或文件顶部,然后执行

/*jslint es6 */
const pdPersonsFilterId = process.argv[2];
现在你看到的警告消失了

发件人:

ECMAScript[ES6]的第六版可能需要一段时间才能实现 无处不在。在不完全兼容的环境中使用新功能 执行新标准将导致失败。这就是JSLint给出 使用ES6功能时的警告ES6的一些功能很好, 因此,JSLint将通过ES6选项识别ES6的好部分。 新标准的实现变得更加稳定和更好 可以理解,JSLint识别的特性集可能会增加。 完成向ES6的过渡后,将启用ES6选项 掉落。[emph mine]

看起来很公平。因此,您看到的只是警告您,在不支持ES6的地方,您所拥有的可能无法工作,因为现在有很多地方都支持ES6。一旦ES6更加普及,或者如果您明确告知Crockford您打算使用ES6,警告就会消失。(TJ的观点可能是,至少对于Node,现在是删除警告的时候了。^D)

试试看


它有更好的统计数据,文档非常精彩,而且被广泛使用。

es6不是javascript的“最新工作版本”。@magreenberg:不是吗?不,浏览器没有跟上es6新功能的速度,它们还在开发中。您可以在特定的情况下使用它们,但它们不支持web。@magreenberg:所以他们将其定义为某种任意级别的浏览器采用?奇怪的我认为开发商可以自己做出决定。但接下来是jsLint,所以我保持较低的期望值。@Nikage我建议使用linting ES6,至少在jsLint完全支持ES6功能之前是这样。@T.J.Crowder我认为这是你的错,而不是Crockford。令人痛苦的是,节点包装器似乎仍在使用,它没有
es6
选项。Crockford(afaik)没有发布JSLint beyond和的版本。我认为你是对的。:-)我无法想象为什么我没有使用它。Wrapper现在有一个更新的版本,fwiw-但您可能需要--edition=es6才能使用es6代码如何将其添加到配置文件中?(我相信文件名应该是
.jslintrc
,但是
{“es6:true}
什么都不做)
$jslint--version node jslint version:0.11.0 jslint edition 2013-08-26
与该版本的es6不起作用,OP所说的TrueSlint是一个更好的选择,并且有更好的文档记录。eslint很难在全球范围内安装。