0

我正在使用http://nodejs.org/api/debugger.html

我在方法中放置了一个断点:

Processor.prototype.myMethod = function() {
  console.log(this.constructor.name);  // returns Processor

  debugger;

  this.otherMethod(123);
}

我打电话node debug myapp.js,我到达断点。但是当我输入时this.constructor.name,我得到的是“对象”,而不是“处理器”。

我可以访问该this范围的内部还是必须使用https://github.com/node-inspector/node-inspector之类的东西?

编辑:我似乎无法从调试器访问任何脚本变量,甚至Processor. 我在 OS X 上使用 v0.10.13。

4

1 回答 1

1

是的,您可以从中访问值,以及可以从调试器停止的范围访问的任何其他值,但是您应该启动调试器repl,在同一个调试器中键入该命令,然后在此处键入您想要的值观看 ( this.constructor.name)。

要离开调试器的 repl,请按ctrl + c,您将返回调试器提示符。

提醒您,如果构造函数是命名函数,则构造函数将具有名称,否则将为空字符串,例如, var Processor = function Processor() {};而不是var Processor = function () {};

于 2013-08-06T12:37:23.210 回答