当前位置: 首页 > 图文教程 > 网络编程 > Javascript > javascript Error 对象 错误处理

Javascript
javascript 关闭IE6、IE7
javascript substr和substring用法比较
javascript 强制弹出窗口代码-跨拦截
javascript 获取多条数据(模拟ajax获取数据)
js 分页代码带切换效果
选择指定数量后checkbox不可选(变灰)javascript代码
javascript 图片上传预览-兼容标准
jquery 截取字符串的实现
jquery tagname 取得方法
scrollTop 用法说明
javascript 倒排序方法
慎用 somefunction.prototype 分析
几个常用的JavaScript字符串处理函数 - split()、join()、substring()和indexOf()
javascript 根据歌名获取播放地址和歌词内容
js在Firefox与IE中对DOM对像的引用的比较
Javascript String对象扩展HTML编码和解码的方法
javascript HTMLEncode HTMLDecode的完整实例(兼容ie和火狐)
Javascript 获取字符串字节数的多种方法
javascript 常用方法总结
cookie丢失问题(认证失效) Authentication (用户验证信息)也会丢失

Javascript 中的 javascript Error 对象 错误处理


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 296 ::
收藏到网摘: n/a

javascript常见error对象处理,错误代码集合 Error对象
Property:
name: 错误名
number: 错误号
description: 描述
message: 错误信息,多同description
FF Only 属性
fileName: 错误发生的文件
stack: 错误发生时的调用堆栈

Constructor:
Error(){
this(0,"")}
Error(description){
this(0,description)}
Error(number,description){
....}
构造函数参数不带name,是因为Error对象的name对应于它的来源:
EvalError: 错误发生在eval()中
SyntaxError: 语法错误,错误发生在eval()中,因为其它点发生SyntaxError会无法通过解释器
RangeError: 数值超出范围
ReferenceError: 引用不可用
TypeError: 变量类型不是预期的
URIError: 错误发生在encodeURI()或decodeURI()中
抛出Error:
throw new Error(0,"Error Demo");
new Error可省略:
throw("Error Demo");
捕获Error:
try catch finally语句:
try{
..可能错误的语句..}
catch(e){
..错误发生后的处理..}
finally{
..完成后执行的语句块..}
finally不是必须的
如果嵌套,两个catch不要使用同一个参数名,以免覆盖
传入的参数是一个Error对象,可以从中得到错误信息
FF支持一个try多个catch,因为Js为弱类型不推荐使用
window.onerror错误捕获:
window.onerror=function(Msg,Url,Num){}
onerror事件会传给回调函数3个默认参数
Msg: 错误信息
Url: 发生错误的文件的Url
Num: 错误发生位置的行号
window.onerror还能处理SyntaxError,比try catch更强大。
但是onerror属于bom,所以各浏览器厂家对其的支持都不同。
如IE发生error时,正常的代码会继续执行;在FF中,代码将结束;Safari只支持Image的onerror事件处理。
Image.onerror
onerror还可以应用于其它HTMLElement上,最常见的是<img />元素
<img src="sample.jpg" onerror="javascript:alert('图像载入错误');" />
处理Error:
判断错误类型:
catch(e){
if(e.name=="RangeError")
alert("错误提示");}

catch(e){
if(e instanceof TypeError)
alert("错误提示");}