关键词1
关键词101
关键词201
关键词301
关键词401
关键词501
关键词601
关键词701
关键词801
关键词901
关键词1001
关键词1101
关键词1201
关键词1301
关键词1401
关键词1501
关键词1601
关键词1701
关键词1801
关键词1901
懂视1
懂视101
懂视201
懂视301
懂视401
懂视501
懂视601
懂视701
懂视801
懂视901
懂视1001
懂视1101
懂视1201
懂视1301
懂视1401
懂视1501
懂视1601
懂视1701
懂视1801
懂视1901
文库1
文库101
文库201
文库301
文库401
文库501
文库601
文库701
文库801
文库901
文库1001
文库1101
文库1201
文库1301
文库1401
文库1501
文库1601
文库1701
文库1801
文库1901
华拓科技网
全部频道
首页
科技
教育
生活
旅游
时尚
美容
美食
健康
体育
游戏
汽车
家电
您的当前位置:
首页
JavaScriptTry...Catch声明的使用方法_基础知识
JavaScriptTry...Catch声明的使用方法_基础知识
来源:华拓科技网
try...catch的作用是测试代码中的错误。
实例
try...catch声明
如何编写try...catch声明。
带有确认框的try...catch声明
另一个编写try...catch声明的例子。 JavaScript - 捕获错误
当我们在网上冲浪时,总会看到带有runtime错误的Javascript警告框,同时会询问我们“是否进行debug?”。像这样的错误信息或许对开发人员有用,对用户则未必。当错误发生时,他们往往会选择离开这个站点。
本节向你讲解如何捕获和处理Javascript的错误消息,这样就可以为受众提供更多的便利。
有两种在网页中捕获错误的方法:
使用try...catch声明。(在IE5+、Mozilla 1.0、和Netscape 6中可用)
使用onerror 事件。这是用于捕获错误的老式方法。(Netscape 3以后的版本可用)
Try...Catch 声明
try...catch可以测试代码中的错误。try部分包含需要运行的代码,而catch部分包含错误发生时运行的代码。
语法:
try
{
//在此运行代码
}
catch(err)
{
//在此处理错误
}注意:try...catch使用小写字母。大写字母会出错。
实例 1
下面的例子原本用在用户点击按钮时显示"Welcome guest!"这个消息。不过message()函数中的alert()被误写为adddlert()。这时错误发生了:
function message() { adddlert("Welcome guest!") } script>
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
我们可以添加try...catch声明,这样当错误发生时可以采取更适当的措施。
下面的例子用try...catch声明重新修改了脚本。由于误写了alert(),所以错误发生了。不过这一次,catch部分捕获到了错误,并用一段准备好的代码来处理这个错误。这段代码会显示一个自定义的出错信息来告知用户所发生的事情。
var txt="" function message() { try { adddlert("Welcome guest!") } catch(err) { txt="There was an error on this page.\n\n" txt+="Error description: " + err.description + "\n\n" txt+="Click OK to continue.\n\n" alert(txt) } } script>
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]实例 2
下一个例子会显示一个确认框,让用户来选择在发生错误时点击确定按钮来继续浏览网页,还是点击取消按钮来回到首页。如果confirm方法的返回值为false,代码会把用户重定向到其他的页面。如果confirm方法的返回值为true,那么代码什么也不会做。
var txt="" function message() { try { adddlert("Welcome guest!") } catch(err) { txt="There was an error on this page.\n\n" txt+="Click OK to continue viewing this page,\n" txt+="or Cancel to return to the home page.\n\n" if(!confirm(txt)) { document.location.href="http://www.w3school.com.cn/" } } } script>
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
显示全文