JavaScript异常处理

[size=large][b]window.onerror的使用[/b][/size]
  
<html>
<head>
<script type="text/javascript">
function errortest (sMessage, sURL, sLine){

var errorMessage = "IE错误\n";
errorMessage += "错误信息:" + sMessage + "\n";
errorMessage += "链接:" + sURL + "\n";
errorMessage += "行号:" + sLine;
alert(errorMessage);
//window.onerror = null;
return true;
}
window.onerror = errortest;

function test(){
dsfdss
}
</script>
</head>
<body onload="test()">
</body>
</html>

通过这个例子,提供给我们对页面调试的可能。
分析:
[img]http://dl.iteye.com/upload/attachment/335311/283089e4-c9f2-393b-9eb0-0aa5a80085d9.jpg[/img]
onerror方法的三个参数:错误信息,链接和行号
在IE下提示,错误信息不够具体,行号经常不准确,目前已很少使用。

目前捕获异常的方式一般为:

try{
} catch(e){
} finally{
}

[size=large][b]try {} catch (e) {} finally{}[/b][/size]

catch参数 e 为 Error 对象,包含属性:name和message
Error对象有多种类型:EvalError,RangeError,ReferenceError,SyntaxError,TypeError,URIError。
  
<html>
<head>
<script type="text/javascript">
function test(){
try{
dsfdss
}catch(e){
var errorMessage = "发生了脚本运行错误:\n";
errorMessage += "错误名称:" + e.name + "\n";
errorMessage += "错误信息:" + e.message;
alert(errorMessage);
}
}
</script>
</head>
<body onload="test()">
</body>
</html>

如果需要判断E的类型,可以使用
E instanceof TypeError 或者是使用 E.name == “TypeError”
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值