javascript  Error 对象 错误处理


Posted in Javascript onMay 18, 2008

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("错误提示");}

Javascript 相关文章推荐
Web层改进II-用xmlhttp 无声息提交复杂表单
Jan 22 Javascript
js函数的延迟加载实现代码
Oct 11 Javascript
用js来获取上传的文件名纯粹是为了美化而用
Oct 23 Javascript
JQuery获取与设置HTML元素的内容或文本的实现代码
Jun 20 Javascript
网站发布后Bootstrap框架引用woff字体无法正常显示的解决方法
Nov 24 Javascript
通过修改360抢票的刷新频率和突破8车次限制实现方法
Jan 04 Javascript
js实现打地鼠小游戏
Feb 13 Javascript
详解vue+css3做交互特效的方法
Nov 20 Javascript
Bootbox将后台JSON数据填充Form表单的实例代码
Sep 10 Javascript
详解Vue.js在页面加载时执行某个方法
Nov 20 Javascript
Vue的路由及路由钩子函数的实现
Jul 02 Javascript
用vue 实现手机触屏滑动功能
May 28 Javascript
javascript:以前写的xmlhttp池,代码
May 18 #Javascript
JavaScript的9个陷阱及评点分析
May 16 #Javascript
认识延迟时间为0的setTimeout
May 16 #Javascript
用函数式编程技术编写优美的 JavaScript_ibm
May 16 #Javascript
Javascript模块模式分析
May 16 #Javascript
Dom加载让图片加载完再执行的脚本代码
May 15 #Javascript
直接生成打开窗口代码,不必下载
May 14 #Javascript
You might like
PHP HTTP 认证实例详解
2016/11/03 PHP
stripos函数知识点实例分享
2019/02/11 PHP
javascript同页面多次调用弹出层具体实例代码
2013/08/16 Javascript
调试JavaScript中正则表达式中遇到的问题
2015/01/27 Javascript
JavaScript搜索字符串并将搜索结果返回到字符串的方法
2015/04/06 Javascript
在Node.js中使用Javascript Generators详解
2016/05/05 Javascript
Javascript 普通函数和构造函数的区别
2016/11/05 Javascript
基于datepicker定义自己的angular时间组件的示例
2018/03/14 Javascript
使用Vue制作图片轮播组件思路详解
2018/03/21 Javascript
AngularJS自定义表单验证功能实例详解
2018/08/24 Javascript
vue实现简单的日历效果
2020/09/24 Javascript
记录微信小程序 height: calc(xx - xx);无效问题
2019/12/30 Javascript
vue props default Array或是Object的正确写法说明
2020/07/30 Javascript
Chrome插件开发系列一:弹窗终结者开发实战
2020/10/02 Javascript
vue项目开启Gzip压缩和性能优化操作
2020/10/26 Javascript
[01:34:42]NAVI vs EG 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
使用Python的内建模块collections的教程
2015/04/28 Python
Python字符串格式化输出方法分析
2016/04/13 Python
Android 兼容性问题:java.lang.UnsupportedOperationException解决办法
2017/03/19 Python
python flask几分钟实现web服务的例子
2019/07/26 Python
如何运行带参数的python脚本
2019/11/15 Python
Python算法中的时间复杂度问题
2019/11/19 Python
Python 3.8 新功能来一波(大部分人都不知道)
2020/03/11 Python
python 使用tkinter+you-get实现视频下载器
2020/11/17 Python
Pytorch自定义Dataset和DataLoader去除不存在和空数据的操作
2021/03/03 Python
Urban Outfitters美国官网:美国生活方式品牌
2016/08/26 全球购物
法国春天百货官网:Printemps.com
2020/06/29 全球购物
.NET remoting的两种通道是什么
2016/05/31 面试题
财务会计专业毕业生自荐信
2013/10/19 职场文书
学习十八大报告感言
2014/02/04 职场文书
安全生产活动月方案
2014/03/09 职场文书
文案策划专业自荐信
2014/07/07 职场文书
职业道德模范事迹材料
2014/08/24 职场文书
董事长秘书岗位职责
2015/02/13 职场文书
三行辞职书范文
2015/02/26 职场文书
一篇文章学会Vue中间件管道
2021/06/20 Vue.js