繁体   English   中英

在JavaScript中观看匿名函数中的变量

[英]Watching a variable in an anonymous function in JavaScript

我想确定何时更改特定变量。 使用此代码监视我可以访问的任何对象的任何属性,我都取得了巨大的成功,但是可以将其用于这样声明的变量吗:

$(                  // line 1
  function(){       // line 2
    var A;          // line 3
    // ... lots of code that uses A as if it were a global. I wanna see what part of this code sets A ...
  }                 // line 5999
);                  // line 6000

当然, A不会最终成为window的属性。 它可能是跨越2行到5999行的匿名函数对象的属性吗? 因此,如果我命名该函数以便可以引用它,那么我是否可以以某种方式在A var / prop上使用watch

我还有哪些其他方法可以确定var的设置位置?

这似乎有些疯狂,但是,只需进行一些修改,您就可以观察变量指针。

(function() {
    window.ox = x = {};

    x.y = 5;
})();

alert(ox.y);

这将其拉入全局区域,并应允许您从全局变量ox观察变量x。

您不能在该变量上使用Object.prototype.watch ,仅仅是因为它是一个变量,而不是对象属性。 不论其范围如何(这是您提到的匿名函数)。

如果您出于调试目的而尝试这样做,我相信您可以从浏览器的开发人员工具中进行观察。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM