2008-09-29 131 views
74

在Firefox中,我可以通过使用exception.stack来获取异常的堆栈跟踪。Javascript异常栈跟踪

有没有办法在其他浏览器中获取?

编辑:我实际上想自动保存堆栈跟踪(如果可能)并且不在当时调试它(即我知道如何在调试器中获取堆栈跟踪)。

回答

0

不是,至少不容易。

在IE中,您可以使用MS Script Debugger(出于某种原因是Office组件)或Visual Studio来调试浏览器进程,然后您可以在断点上看到堆栈。

21

的Webkit现在拥有的功能,提供堆栈跟踪:

Web Inspector: Understanding Stack Traces,由尤里·Semikhatsky周三,2011年4月20日张贴在上午07时32分(webkit.org)

从该职位:

+1

比创建一个例外,只是为了方便多了查看它的堆栈。 – 2011-08-16 02:08:21

+0

优秀的链接,谢谢! – devios1 2011-12-13 15:16:54

55

广场这一行,你要打印的堆栈跟踪:

console.log(new Error().stack); 

注:通过我的铬24火狐18

测试可能是值得考虑看看this tool为好。

2

如果你想要字符串堆栈跟踪,我会去insin的回答:stacktrace.js。如果你想访问堆栈跟踪(行号,文件名等)stackinfo,它实际上使用了stacktrace.js。

0

您必须尝试良好的开源库TraceKit,它会尝试在所有主流浏览器中为未处理的JavaScript异常创建堆栈跟踪。你可以阅读更多关于Tracekit

https://github.com/csnover/TraceKit/

PS:如果你正在寻找(使用Tracekit)具有良好的UI服务,您可以尝试Atatus