gpt4 book ai didi

javascript - 在 JavaScript 中实现异常处理

转载 作者:行者123 更新时间:2023-11-30 13:36:28 26 4
gpt4 key购买 nike

我想知道在 Javascript 中实现异常处理的最好和最简单的方法。我正在寻找一个“单点”解决方案。我有很多功能,不想四处走动并实现 try-catch。

我觉得 window.onerror 会是一种更好的方法,因为我只需要在一个地方实现它,并且任何函数中发生的任何异常,我都可以使用 window.onerror 来处理它。但是,这似乎仅在 IE 中受支持。有没有我可以使用的类似方法,以便它支持所有主要的标准浏览器。

提前致谢。

最佳答案

使用 try..catch block

JavaScript 中的 try..catch block 与常规的 C# try..catch block 非常相似。可疑代码将被放入 try block 中,try block 中发生的所有异常将被捕获到 catch block 中。

window.onload = function()
{
try
{
var x = 90;
var value = x / y;
}
catch(err)
{
document.write(err.name + ": " + err.message + "<br/>");
}
}

输出:

TypeError: 'y' is undefined

在 catch 中,您将获得包含异常类型和描述的对象。此外,您还可以像在 C# 中一样使用 finally block 。

window.onload = function()
{
try
{
var x = 90;
var value = x / y;
}
catch(err)
{
document.write(err.name + ": " + err.message + "<br/>");
}
finally
{
alert('This is finally block');
}
}

使用onerror事件

每次在文档中执行操作时出现任何错误都会引发 onerror 事件。这类似于 ASP.NET 中类似于 Application_Error 的现场异常处理。这是演示这一点的示例代码:

window.onload = function()
{
var x = 90;
var value = x / y;
}

window.onerror = function(errorMeaage, fileName, lineNumber)
{
document.write('Error: ' + errorMeaage);
}

使用 jQuery 解决方案

它类似于使用 onerror 但使用 jQuery 语法。语法是:

$(window).error(
function(errorMeaage, fileName, lineNumber)
{
// handle error here
}
);

摘自 JavaScript Exception Handling Techniques

关于javascript - 在 JavaScript 中实现异常处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4654838/

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