【问题标题】:Chrome developer tools (How to know I am calling which javascript object)Chrome 开发者工具(如何知道我在调用哪个 javascript 对象)
【发布时间】:2012-09-13 05:13:33
【问题描述】:

我首先在一行 JavaScript 中(在 JavaScript 类中)创建一个断点。然后我一步一步转到下一个函数调用F11。使用开发人员工具,我可以访问以下代码。

var p = this.rotator.playing;

在这种情况下,我知道类内的变量类名 但我现在想知道我正在为该类调用哪个对象。有什么建议吗?

实际上我想从 JavaScript 类的外部修改变量 p

【问题讨论】:

  • 我们将在该断点处从控制台(Chrome 开发者工具)获取this.rotator.playing 的值。所以我们也可以在那个时候修改this.rotator.playing 的值。但我无法从外部进行修改,因为我不知道现在哪个对象正在运行。

标签: javascript debugging google-chrome developer-tools


【解决方案1】:

您可以为每个不确定的对象添加一个监视表达式,并且当前使用的对象都有一个值。

不确定这是否是一个答案。这不是一个非常好的问题。

【讨论】:

  • 我不知道对象的名称,并且该对象不是全局的。 this.rotator.playing 是压缩 js 文件上的脚本。我可以修改代码this.rotator.playing 附近的压缩文件,但我不能在外部修改this.rotator.playing。 Watch Expression 能帮上忙吗?
  • 好吧,您可以这样做:在 Sources 面板中打开压缩文件,然后单击 {} 图标以漂亮地打印代码,使其可读。然后执行 Ctrl + Shift + O 来搜索包含此对象的方法或属性,或者执行 Ctrl + F 来简单地查找它所在的行号。最后,您可以通过单击对象所在行的行号间距在该行上添加断点。或者,您可以右键单击该行号的装订线并选择继续到此处,
  • 或添加一个条件断点,您可以指定它应该在该行上中断的条件。当您执行此操作时,您可以在 Scope Variables 侧边栏中查看对象属性/值,并在 Watch 表达式中添加查看对象,如果您要为 this.rotator.playing 设置一个,因为它会在脚本执行中的特定时间在范围内并且应该存在,它的调用堆栈也显示在侧边栏中。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-22
  • 1970-01-01
  • 2015-08-26
  • 1970-01-01
  • 2012-09-17
  • 2016-05-15
  • 1970-01-01
相关资源
最近更新 更多