use*_*667 44 javascript debugging breakpoints watch
与此处的其他问题类似,就像这一个.
有没有办法在任何JavaScript调试器中打破变量值的变化?(比如IE Developer工具,Visual Studio或Firebug)?
我想它就像是一个"监视变量",但我希望能够看到callstack并在实际发生变量变化时暂停它.
另一种方法可能是使用自定义setter覆盖值设置,并在其中放置断点,但不幸的是,这对IE AFAIK不起作用.
更新 似乎这种行为至少可用于用C++编写的非托管代码. 所以我想也许用C++编写的javascript引擎(谷歌的V8)可能有类似的东西,但似乎没有我想要的东西.
pau*_*sm4 19
你甚至不需要IDE - 你可以使用"Object.watch()":
如果你使用任何一个调试器,我强烈推荐使用Firebug.对于您的所有Javascript,HTML和CSS需求:-):
http://getfirebug.com/javascript
rai*_*bba 10
我在Chrome中使用此库取得了成功,它似乎支持所有主流浏览器.
https://gist.github.com/eligrey/384583
只需包含.js文件,然后调用:
yourObject.watch('someProperty', function() {
doWhatYouWant();
debugger;
console.write('this too');
alert('Object Changed'); //etc
});
Run Code Online (Sandbox Code Playgroud)