防止未使用var关键字声明变量

4

如何在不使用var关键字的情况下防止变量被声明? 我可以设置NetBeans来警告我吗?

例如,我想在以下情况下收到警告或类似信息:

var testing = 5;

// ...

testin = 2; // Woops, typo!

1
"use strict";放在代码顶部。它会强制你编写干净的代码并声明变量。 - Brett
2个回答

2
我能为您想到至少两种可能性。一种是如上所述的JSLint。另一种是使用名为“严格模式”的新JavaScript功能(在其他地方描述)。
我听说Firefox的夜间版本现在支持严格模式,Chrome的预发布版本也支持它。很快所有新的浏览器版本都将支持它。

如果你在严格模式下使用 foo = 'bar',并且 foo 没有被声明,它会抛出一个错误。 - alexia
@Nyuszika7H 您遇到了什么样的错误?是 alert("去死吧");,还是页面刷新,或者其他什么问题? - Mateen Ulhaq
@muntoo:抱歉,我不知道。Chrome的严格模式并不完整,他们只实现了一些东西。 - alexia

1

我刚看到这个问题,认为值得注意的是 ECMAScript 5 现在有一个名为“use strict”的选项。只需将“use strict”;(包括引号)放在一行上,要么在脚本顶部(在所有地方使用它),要么在函数内部(仅在一个位置使用它)。请参见http://ejohn.org/blog/ecmascript-5-strict-mode-json-and-more/以获取更多详细信息。非常方便!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接