JavaScript和泄漏的全局变量

时间:2011-09-06 07:02:57

标签: javascript

在JavaScript中,如果你这样做:

var myvar = 5;

然后它将是该文件的本地文件,但是如果您不小心忘记了var并且只是这样做:

myvar = 5;

然后它变得全球化。

有没有什么好方法可以解决这个问题,在我看来,默认情况应该是本地的,你应该做global myvar = 5这样的事情来获得全局。

我发现有"use strict";警告你,但我希望有一个更优雅的解决方案,并认为它必须存在?

1 个答案:

答案 0 :(得分:5)

  

然后它将是该文件的本地

不,它将是功能

的本地
  

然而如果你不小心忘记了“var”......   有没有什么好的解决方案来解决这个问题

JS Lint会因为使用全局变量而大喊大叫,JS现在支持strict mode(虽然并非所有浏览器都能使用它)。

  

有“严格使用”;我发现警告你,但我希望有一个更优雅的解决方案

严格模式优雅