是否有可能,比如用一些指令中的JavaScript代码,如果变量而不必首先声明用完就扔的警告或错误?是否可以强制JavaScript在使用前声明变量?
在原位缺口可能的情况下,是有可能一些插件强制的Eclipse(或任何其他IDE)来检测未声明的变量?
是否有可能,比如用一些指令中的JavaScript代码,如果变量而不必首先声明用完就扔的警告或错误?是否可以强制JavaScript在使用前声明变量?
在原位缺口可能的情况下,是有可能一些插件强制的Eclipse(或任何其他IDE)来检测未声明的变量?
是的,这是可能做到这一点使用strict mode。通过在文件或函数的顶部放置一个包含字符串文字"use strict"
的语句来启用它,以便为该范围启用严格模式。
"use strict";
doesNotExist = 42; // this throws a ReferenceError
这是ECMAScript 5中的一项新功能,目前尚未被所有浏览器支持。但是,由于"use strict";
是一个无效的有效语句,因此不支持它的浏览器会忽略它。因此,您可以使用它在开发过程中捕获错误,但不要依赖它在用户的浏览器中抛出异常。
简单地说,没有。 JS是动态的,没有经典的输入。可以的话,按照惯例创建自己的全局对象(1或以上)只使用/这些对象的属性,可能缓解这种风险
据我所知,严格模式只在Firefox中实现。我无法在其他地方找到它。严格模式由于其范围的工作原因是危险的。它适用于包含的文件,但不适用于函数内部。 – yakatz 2011-05-26 04:38:53
@yakatz:Chrome至少有部分支持。 [尝试此测试](http://java-script.limewebs.com/strictMode/test_hosted.html)查看它在您的浏览器中的支持情况。 – hammar 2011-05-26 04:50:43
Chrome 12(测试版):37/38。 IE9:0/38 ;-) – yakatz 2011-05-26 04:54:54