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 相关文章推荐
JavaScript异步编程:异步数据收集的具体方法
Aug 19 Javascript
浅析js中substring和substr的方法
Nov 09 Javascript
jQuery实现的导航下拉菜单效果示例
Sep 05 Javascript
jQuery复制节点用法示例(clone方法)
Sep 08 Javascript
利用node.js如何搭建一个简易的即时响应服务器
May 28 Javascript
基于vue实现分页效果
Nov 06 Javascript
vue2.0使用swiper组件实现轮播效果
Nov 27 Javascript
JS与SQL方式随机生成高强度密码示例
Dec 29 Javascript
javascript实现小型区块链功能
Apr 03 Javascript
JS正则表达式封装与使用操作示例
May 15 Javascript
JavaScript中callee和caller的区别与用法实例分析
Jun 28 Javascript
KnockoutJS数组比较算法实例详解
Nov 25 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使用header()输出图片缓存实例
2014/12/09 PHP
PHPExcel在linux环境下导出报500错误的解决方法
2017/01/26 PHP
thinkPHP5.0框架配置格式、加载解析与读取方法
2017/03/17 PHP
Mozilla中显示textarea中选择的文字
2006/09/07 Javascript
懒就要懒到底——鼠标自动点击(含时间判断)
2007/02/20 Javascript
基于Jquery+Ajax+Json实现分页显示附效果图
2014/07/30 Javascript
Nodejs异步回调的优雅处理方法
2014/09/25 NodeJs
javascript日期处理函数,性能优化批处理
2015/09/06 Javascript
【经验总结】编写JavaScript代码时应遵循的14条规律
2016/06/20 Javascript
Ajax高级笔记 JavaScript高级程序设计笔记
2017/06/22 Javascript
理解Angular的providers给Http添加默认headers
2017/07/04 Javascript
使用async、enterproxy控制并发数量的方法详解
2018/01/02 Javascript
关于Vue的路由权限管理的示例代码
2018/03/06 Javascript
jQuery简单实现的HTML页面文本框模糊匹配查询功能完整示例
2018/05/09 jQuery
详解JavaScript中关于this指向的4种情况
2019/04/18 Javascript
详解Nuxt.js中使用Element-UI填坑
2019/09/06 Javascript
JS模拟浏览器实现全局搜索功能
2019/09/11 Javascript
vue中的mescroll搜索运用及各种填坑处理
2019/10/30 Javascript
javascript+css实现俄罗斯方块小游戏
2020/06/28 Javascript
使用Vant完成通知栏Notify的提示操作
2020/11/11 Javascript
mac下给python3安装requests库和scrapy库的实例
2018/06/13 Python
Linux下python与C++使用dlib实现人脸检测
2018/06/29 Python
Flask框架响应、调度方法和蓝图操作实例分析
2018/07/24 Python
Python基于DB-API操作MySQL数据库过程解析
2020/04/23 Python
基于python实现查询ip地址来源
2020/06/02 Python
浅析HTML5的WebSocket与服务器推送事件
2016/02/19 HTML / CSS
浅谈react路由传参的几种方式
2021/03/23 Javascript
机械电子工程毕业生自荐信
2013/11/23 职场文书
结构工程个人自荐信范文
2013/11/30 职场文书
国庆节促销广告语2014
2014/09/19 职场文书
初中生考试作弊检讨书
2014/12/14 职场文书
2015圣诞节贺卡寄语
2015/03/24 职场文书
2015年公务员试用期工作总结
2015/05/28 职场文书
如何写好一份优秀的工作总结?
2019/06/21 职场文书
MySQL修改默认引擎和字符集详情
2021/09/25 MySQL
Java中生成微信小程序太阳码的实现方案
2022/06/01 Java/Android