gpt4 book ai didi

javascript - 全局 JavaScript 异常处理程序(在 Chrome 中)

转载 作者:可可西里 更新时间:2023-11-01 02:03:43 24 4
gpt4 key购买 nike

如何在 JavaScript 中覆盖全局异常处理程序,使其成为所有未捕获异常的顶级处理程序?

window.onerror 不工作。代码是:

<HTML>
<HEAD>
<script language='javascript'>
window.onerror = function (em, url, ln) {
alert(em + ", " + url + ", " + ln);
return false;
}

function fGo() {
try
{
var a = b; // Error here: b not defined
}
catch (e)
{
throw e;
}
}
</script>
</HEAD>

<BODY>
<button onclick='fGo()'>GO</button>
</BODY>
</HTML>

顺便说一句,我正在 Chrome 上进行测试。开发者控制台注册了未捕获的异常,但是 window.onerror 中的 alert() 没有出现。

最佳答案

截至 2013 年,Chrome 支持 window.onerror。 (我有 25 版,评论也暗示早期版本。)

我使用 currying 封装了 jQuery创建一个始终在 jQuery 函数中执行 try...catch 的代理。

我在 www.js-analytics.com 中使用它.但是,该解决方案仅适用于 jQuery 脚本。

在 2013 年之前,Google Chrome 不支持 window.onerror,显然它没有在 WebKit 中实现。 .

关于javascript - 全局 JavaScript 异常处理程序(在 Chrome 中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2384666/

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