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 相关文章推荐
jquery checkbox,radio是否选中的判断代码
Mar 20 Javascript
利用进制转换压缩数字函数分享
Jan 02 Javascript
原生javascript实现的一个简单动画效果
Mar 30 Javascript
AngularJS 中的Promise --- $q服务详解
Sep 14 Javascript
通过jquery实现页面的动画效果(实例代码)
Sep 18 Javascript
微信小程序的动画效果详解
Jan 18 Javascript
iscroll.js滚动加载实例详解
Jul 18 Javascript
JavaScript实现点击出现图片并统计点击次数功能示例
Jul 23 Javascript
基于Vue 2.0 监听文本框内容变化及ref的使用说明介绍
Aug 24 Javascript
js计算最大公约数和最小公倍数代码实例
Sep 11 Javascript
Node快速切换版本、版本回退(降级)、版本更新(升级)
Jan 07 Javascript
Ajax异步刷新功能及简单案例
Nov 20 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
phplock(php进程锁) v1.0 beta1
2009/11/24 PHP
Ajax实时验证用户名/邮箱等是否已经存在的代码打包
2011/12/01 PHP
PHP模拟登陆163邮箱发邮件及获取通讯录列表的方法
2015/03/07 PHP
php校验表单检测字段是否为空的方法
2015/03/20 PHP
php 在字符串指定位置插入新字符的简单实现
2016/06/28 PHP
thinkphp5.0自定义验证规则使用方法
2017/11/16 PHP
php微信开发之关注事件
2018/06/14 PHP
Yii框架小部件(Widgets)用法实例详解
2020/05/15 PHP
编写跨浏览器的javascript代码必备[js多浏览器兼容写法]
2008/10/29 Javascript
JavaScript 事件参考手册
2008/12/24 Javascript
JavaScript的类型简单说明
2010/09/03 Javascript
js复制到剪切板的实例方法
2013/06/28 Javascript
JavaScript获取XML数据附示例截图
2014/03/05 Javascript
JavaScript中判断整字类型最简洁的实现方法
2014/11/08 Javascript
javascript常用的方法分享
2015/07/01 Javascript
jQuery实现类似老虎机滚动抽奖效果
2015/08/06 Javascript
IE6兼容透明背景图片及解决方案
2015/08/19 Javascript
微信小程序实现图片放大预览功能
2020/10/22 Javascript
详解如何使用PM2将Node.js的集群变得更加容易
2017/11/15 Javascript
[05:34]2014DOTA2国际邀请赛中国区预选赛精彩TOPPLAY第二弹
2014/06/25 DOTA
[29:16]完美世界DOTA2联赛决赛日 Inki vs LBZS 第三场 11.08
2020/11/10 DOTA
python定时采集摄像头图像上传ftp服务器功能实现
2013/12/23 Python
Python+tkinter使用80行代码实现一个计算器实例
2018/01/16 Python
Python数据分析库pandas基本操作方法
2018/04/08 Python
Pyqt清空某一个QTreeewidgetItem下的所有分支方法
2019/06/17 Python
Python获取时间范围内日期列表和周列表的函数
2019/08/05 Python
详解CSS 3 中的 calc() 方法
2018/01/12 HTML / CSS
用HTML5的canvas实现一个炫酷时钟效果
2016/05/20 HTML / CSS
智利最大的网上商店:Linio智利
2016/11/24 全球购物
建筑施工员岗位职责
2013/11/26 职场文书
如何打造一封优秀的留学推荐信
2014/01/25 职场文书
幼儿园大班个人总结
2015/02/28 职场文书
个人求职自荐信范文
2015/03/06 职场文书
2015年学生会主席工作总结
2015/04/21 职场文书
焦裕禄纪念馆观后感
2015/06/09 职场文书
《扇形统计图》教学反思
2016/02/17 职场文书