如何知道在chrome控制台中定义js全局变量的文件?

时间:2012-07-25 07:43:30

标签: javascript google-chrome mootools google-chrome-devtools

如何找出使用谷歌浏览器控制台定义变量的文件和行?

例如,变量Native(来自MooTools)已在全局范围内定义。我想知道使用谷歌浏览器控制台在哪个文件中定义了这个变量。

3 个答案:

答案 0 :(得分:29)

使用chrome:

  1. 打开Web Inspector
  2. 显示控制台并检查您要搜索的var是否存在(例如:Native Enter
  3. 单击“资源”面板
  4. 在右上角的搜索字段中输入Native=var NativeNative =
  5. 你得到了你的结果!
  6. 此处,Native=搜索只有一个结果。结果自动突出显示,并打开相应的文件。在我的示例中,您可以看到Native声明位于mootools.core.js第12行。

    Got it !

    编辑:2015年3月(感谢TML

    在最新的Chrome版本中,右上角的搜索字段不再存在 而不是点击右上角的Show drawer(或点击 Esc ),然后选择刚出现在屏幕底部的Search标签:

    enter image description here

    编辑:2015年11月(感谢tzvi

    您现在需要使用右上角的三点按钮来查找Search all files选项。

    enter image description here

答案 1 :(得分:2)

您可以在“资源”(第二个)标签中搜索“var Native”。

函数定义可以从“范围变量”块,从上下文菜单中找到,但是 在Chrome的WebInspector中没有“查找此变量来自/已定义的位置”的功能。

答案 2 :(得分:1)

Native在core.js第437行中定义

var Native = this.Native = function(properties){
    return new Type(properties.name, properties.initialize);
};

Native.type = Type.type;

Native.implement = function(objects, methods){
    for (var i = 0; i < objects.length; i++) objects[i].implement(methods);
    return Native;
};

https://github.com/mootools/mootools-core/blob/master/Source/Core/Core.js#L437

a =赋值的快速文件搜索几乎总是可行的方法