当在IE 8中抛出JavaScript异常时,如何查看其堆栈跟踪?
例如,jQuery中的以下代码捕获异常并重新抛出它。在Visual Studio(2012)中进行调试,执行在jQuery捕获异常('e')时中断,但我不能在生命中看到异常源自的堆栈跟踪:
// resolve with given context and args
resolveWith: function( context, args ) {
if ( !cancelled && !fired && !firing ) {
firing = 1;
try {
while( callbacks[ 0 ] ) {
callbacks.shift().apply( context, args );
}
}
// We have to add a catch block for
// IE prior to 8 or else the finally
// block will never get executed
catch (e) {
throw e;
}
finally {
fired = [ context, args ];
firing = 0;
}
}
return this;
}
我已经尝试了stacktrace.js库,但是当浏览器是IE 8时它似乎忽略了异常,只是回到生成当前帧的堆栈跟踪。
修改
从下面的屏幕截图中可以看出,异常没有与堆栈相关的属性: