全球变量起源

时间:2016-04-27 22:11:56

标签: javascript

我有一个有趣的问题。

我在项目中检测到了全局变量forEach() 项目有数百个文件,因此dataSrc变量发生了数千次 显然,我忘记了forEach()运营商的某处。

如何跟踪此全局变量原点?

UPD:
正如我已经说过的,变量发生了数千次 我真的不知道它的样子:

height

所以我绝对不能手动搜索它 有什么建议吗?

1 个答案:

答案 0 :(得分:1)

等号是唯一可能意外创建全局变量的方法。唯一的另一种方法是将其指定为全局对象的属性,这不可能是偶然的。因此,您可以使用以下内容搜索文件以查找height的分配:

grep -e '(^|\s)height\s*=' -R *

从这些作业中,您可以确定创建height的位置,以及需要声明的范围。

顺便说一下,在'use strict';模式下,JavaScript会抛出一个错误而不是创建一个隐式全局,这可能是更理想的。