gpt4 book ai didi

javascript - JavaScript 中的 try-catch : how to get stack trace or line number of the original error

转载 作者:技术小花猫 更新时间:2023-10-29 11:07:10 25 4
gpt4 key购买 nike

在JavaScript中使用TRY-CATCH时,如何获取导致错误的行的行号?

在许多浏览器上,下面的代码会很好地工作,我将获得指向抛出异常的实际行的堆栈跟踪。

但是,有些浏览器没有“e.stack”。 iPhone 的 safari 就是一个例子。

是否有办法获取适用于所有浏览器的行号?

try
{
// lots of code here
var i = v.WillGenerateError; // how to get this line number in catch??
// lots of code here
}
catch (e)
{
alert (e.stack) // this will work on chrome, FF. will no not work on safari
alert (e.line) // this will work on safari but not on IPhone
}

非常感谢!

更新:我发现 e.line 可以在 safari 上使用,但在 iPhone 上仍然不可用,最新的 iOS 版本

最佳答案

尝试使用e.lineNumber。例如:

try {
var i = v.WillGenerateError;
} catch (e) {
alert(e.lineNumber);
}

关于javascript - JavaScript 中的 try-catch : how to get stack trace or line number of the original error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10988169/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com