我正在使用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。
答案 0 :(得分:1)
是的,您可以访问此值以及可从调试器停止的作用域访问的任何其他值,但您应该启动调试器repl
,在同一调试器中键入该命令,然后在那里键入您想要观看的值(this.constructor.name
)。
要退出调试器的repl,请按ctrl + c
,然后您将返回调试器提示符。
提醒您,如果构造函数是命名函数,则它将具有名称,否则它将是空字符串,例如
var Processor = function Processor() {};
代替var Processor = function () {};
,