是否可能通过JavaScript代码中的某些指令,在使用未声明的变量时引发警告或错误?
如果不可能,是否有一些插件可以强制Eclipse(或任何其他IDE)检测未声明的变量?
是否可能通过JavaScript代码中的某些指令,在使用未声明的变量时引发警告或错误?
如果不可能,是否有一些插件可以强制Eclipse(或任何其他IDE)检测未声明的变量?
是的,可以使用严格模式来实现这一点。您只需在文件或函数顶部放置一个包含字符串字面量"use strict"
的语句即可启用该作用域的严格模式。
"use strict";
doesNotExist = 42; // this throws a ReferenceError
现在所有更新的浏览器都支持此功能。旧的浏览器不会抛出错误,因为"use strict";
是一个有效的语句,并且被不支持它的浏览器简单地忽略。您可以在开发过程中使用它来捕获错误,但不要依赖它在用户的浏览器中引发异常。
严格模式
JavaScript的严格模式是一种选择进入受限制的JavaScript变体的方式,从而隐式地退出"宽松模式"。严格模式不仅仅是一个子集:它有意与普通代码具有不同的语义。
编辑:本回答已不正确;请参见"use strict";
(如上述答案所示),但JSLint仍然很方便。
这个功能类似于VB/VBA的Option Explicit
和PHP7的declare(strict_types = 1);
。
你要找的功能在其他语言中有时被称为Option Explicit
(我认为它来自Visual Basic)。 JavaScript没有这个功能。
如果你想检查变量的使用情况,请尝试使用JSLint。