Javascript 从Internet Explorer错误对象检索行号
有没有办法从Internet Explorer 7/8错误对象中检索行号 我只知道.message、.description和.number属性 我搜索了一下,在.stack上找到了一篇MSDN文章,但即使使用他们自己的示例代码也不会返回行号:Javascript 从Internet Explorer错误对象检索行号,javascript,internet-explorer,Javascript,Internet Explorer,有没有办法从Internet Explorer 7/8错误对象中检索行号 我只知道.message、.description和.number属性 我搜索了一下,在.stack上找到了一篇MSDN文章,但即使使用他们自己的示例代码也不会返回行号: 我又翻了一些,发现可以使用window.onerror在IE中检索行号。这不是来自错误对象本身,而是一个不错的解决方法: function BadFunction(){ This.badcode.willnot.work = 1000 } fu
我又翻了一些,发现可以使用window.onerror在IE中检索行号。这不是来自错误对象本身,而是一个不错的解决方法:
function BadFunction(){
This.badcode.willnot.work = 1000
}
function ForceError(msg, url, lno) {
alert("Error Occurred! Handled by Generic Error Handler" + "\n" +
"Error: " + msg + "\n" + "URL: " + url + "\n" +
"Line Number: " + lno);
return true;
}
window.onerror = ForceError;
此方法要求错误气泡上升到窗口。如果您的代码中有一个try/catch,那么您需要重新抛出错误,这样错误就会冒出来
在研究这个问题的解决方案时,我还遇到了GitHub上的StackTraceJS。他们的堆栈跟踪脚本在除InternetExplorer之外的所有浏览器上都非常有效。如果您想记录在客户端浏览器上产生的错误,这是一个很棒的运行时调试器
我又翻了一些,发现可以使用window.onerror在IE中检索行号。这不是来自错误对象本身,而是一个不错的解决方法:
function BadFunction(){
This.badcode.willnot.work = 1000
}
function ForceError(msg, url, lno) {
alert("Error Occurred! Handled by Generic Error Handler" + "\n" +
"Error: " + msg + "\n" + "URL: " + url + "\n" +
"Line Number: " + lno);
return true;
}
window.onerror = ForceError;
此方法要求错误气泡上升到窗口。如果您的代码中有一个try/catch,那么您需要重新抛出错误,这样错误就会冒出来
在研究这个问题的解决方案时,我还遇到了GitHub上的StackTraceJS。他们的堆栈跟踪脚本在除InternetExplorer之外的所有浏览器上都非常有效。如果您想记录在客户端浏览器上产生的错误,这是一个很棒的运行时调试器
有帮助吗?不幸的是,没有,我不是为了开发目的而设置调试器,而是在代码投入生产后设置调试器。我们希望能够打开JS错误日志并存储行号,而不仅仅是错误描述。您可能应该编辑您的问题以添加该信息,因为这会对可能的答案产生影响。对不起,没有答案给您,但我不得不发表评论,因为您的名字与我的名字非常接近-有帮助吗?不幸的是,没有,我不是为了开发目的而设置调试器,而是在代码投入生产后设置调试器。我们希望能够打开JS错误日志并存储行号,而不仅仅是错误描述。您可能应该编辑您的问题以添加该信息,因为这会对可能的答案产生影响。对不起,没有答案给您,但我不得不发表评论,因为您的名字与我的名字非常接近-如何在try..catch中重新抛出错误!你能举个例子吗!如何在try..catch中重新抛出错误!你能举个例子吗!