错字会发生,有时在 JavaScript 中很难找到它们。以这个为例(想象它在更多代码之间):
// no error. I would like a warning
document.getElementById('out').innerHtml = "foo";
对于未声明的变量,严格模式有助于:
"use strict";
var myHTML = "foo";
myHtml = "bar"; // -> error
但它不适用于上面的示例。是否有可以捕捉这些错误的程序或模式?我尝试了 JSLint 和 JavaScript Lint,但他们没有抓住它。
理想情况下,我希望它仍然有效(没有警告):
// should work (without warning)
function MyClass(arg) {
this.myField = arg;
}