Firefox的Firebug具有一个不错的功能,称为“属性更改中断”,在这里我可以标记任何对象的任何属性,并且它将在更改之前停止JavaScript执行。
我正在尝试在Google Chrome浏览器中实现相同功能,但是在Chrome调试器中找不到该功能。如何在Google Chrome浏览器中执行此操作?
如果您不介意弄乱源代码,则可以使用访问器重新定义属性。
// original object var obj = { someProp: 10 }; // save in another property obj._someProp = obj.someProp; // overwrite with accessor Object.defineProperty(obj, 'someProp', { get: function () { return obj._someProp; }, set: function (value) { debugger; // sets breakpoint obj._someProp = value; } });