[EDIT]
最初提出这个问题时,JSLint是JavaScript的主要linting工具.JSHint是JSLint的新分支,但尚未与原始版本有太大差异.
从那时起,JSLint基本上保持了静态,而JSHint则发生了很大变化——它抛弃了许多JSLint更具对抗性的规则,添加了大量新规则,并且总体上变得更加灵活.此外,另一个工具ESLint现在可用,它更灵活,有更多的规则选项.
在我最初的回答中,我说你不应该强迫自己遵守JSLint的规则;只要你明白它为什么会抛出警告,你就可以自己判断是否要修改代码来解决警告.
对于2011年发布的JSLint的超严格规则集,这是一个合理的建议——我看到很少有JavaScript代码集能够通过JSLint测试.然而,现在的JSHint和ESLint工具中提供了更实用的规则,因此try 让代码在零警告的情况下通过它们是一个更现实的建议.
有时,Linter会抱怨您故意做的事情--例如,您知道应该始终使用===
,但只有这一次您有很好的理由使用==
.但是,即使这样,使用ESLint,您也可以 Select 在有问题的行周围指定eslint-disable
%,这样您仍然可以在没有警告的情况下通过皮棉测试,并且您的代码的睡觉遵守规则.(只是不要太频繁地做这种事!)
[ORIGINAL ANSWER FOLLOWS]
By all means use JSLint. But don't get hung up on the results and on fixing everything that it warns about. It will help you improve your code, and it will help you find potential bugs, but not everything that JSLint complains about turns out to be a real problem, so don't feel like you have to complete the process with zero warnings.
几乎任何长度或复杂度很高的Javascript代码都会在JSLint中产生警告,无论它写得有多好.如果你不相信我,试着运行一些流行的库,比如JQuery.
一些JSLint警告比其他警告更有价值:了解哪些需要注意,哪些不重要.应该考虑每一个警告,但是不要觉得必须修复您的代码来清除任何给定的警告;查看代码并确定您对它很满意是完全可以的;有时JSlint不喜欢的事情实际上是应该做的.