代码之家  ›  专栏  ›  技术社区  ›  Chris

使用FireBug跟踪Javascript中变量的设置时间/位置

  •  3
  • Chris  · 技术社区  · 14 年前

    我目前正在使用FireBug来查看hypem是如何将内容交付给它的,以允许它的flash播放器工作(特别是play按钮功能)。我发现 trackList

    如何跟踪何时/何地修改此集合?我可以给它加一块表,但不知道怎么在它被设置好的时候设陷阱。

    2 回复  |  直到 14 年前
        1
  •  1
  •   SLaks    14 年前

    不幸的是,这是不可能的。

    相反,您可以搜索Javascript并查看变量的设置位置,然后在找到的每一行上放置一个普通断点。

        2
  •  2
  •   Alexander Abramov    10 年前

    这是你如何使用 defineProperty 去做吧。在我的例子中,我每次都记录 window.$ 与调用堆栈一起分配。当然,您可以触发 debugger;

    Object.defineProperty(window, "$",
    {
      set: function(val) {
        console.log("$ was set to '",val,"' at ",Error().stack);
        this.$internal=val;
      },
      get: function() { return this.$internal; }
    });