簡體   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