[编辑]
此答案已被编辑。我将在下面留下原始答案以供参考(否则评论将毫无意义)。
当最初提出这个问题时,JSLint 是 JavaScript 的主要 linting 工具。JSHint 是 JSLint 的一个新分支,但与原始版本没有太大区别。
从那时起,JSLint 几乎保持不变,而 JSHint 发生了很大的变化——它抛弃了 JSLint 的许多对抗性规则,添加了大量新规则,并且总体上变得更加灵活。此外,另一个工具 ESLint 现在可用,它更加灵活并且具有更多规则选项。
在我原来的回答中,我说你不应该强迫自己遵守 JSLint 的规则;只要你明白它为什么会抛出警告,你就可以自己判断是否更改代码来解决警告。
对于 2011 年的 JSLint 超严格规则集,这是一个合理的建议——我见过很少有 JavaScript 代码集可以通过 JSLint 测试。然而,随着当今 JSHint 和 ESLint 工具中可用的更实用的规则,尝试让您的代码以零警告通过它们是一个更现实的主张。
偶尔可能仍然存在 linter 会抱怨您故意做的事情的情况 - 例如,您知道应该始终使用 ,===
但只有这一次您有充分的理由使用==
. 但即便如此,使用 ESLint,您可以选择eslint-disable
在有问题的行周围指定,这样您仍然可以通过零警告的 lint 测试,而您的其余代码遵守规则。(只是不要经常做那种事情!)
[原答案如下]
一定要使用 JSLint。但是不要被结果和修复它警告的所有内容所困扰。它会帮助你改进你的代码,它会帮助你找到潜在的错误,但并不是 JSLint 抱怨的一切都是一个真正的问题,所以不要觉得你必须在零警告的情况下完成这个过程。
几乎任何具有任何显着长度或复杂性的 Javascript 代码都会在 JSLint 中产生警告,无论它写得多么好。如果您不相信我,请尝试通过它运行一些流行的库,例如 JQuery。
一些 JSLint 警告比其他警告更有价值:了解哪些需要注意,哪些不太重要。应该考虑每个警告,但不要觉得有义务修复您的代码以清除任何给定的警告;查看代码并决定对它感到满意是完全可以的;有时 JSlint 不喜欢的事情实际上是正确的做法。