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 相关文章推荐
Extjs学习笔记之三 extjs form更多的表单项
Jan 07 Javascript
js+css实现导航效果实例
Feb 10 Javascript
JavaScript中pop()方法的使用教程
Jun 09 Javascript
js倒计时抢购实例
Dec 20 Javascript
JavaScript登录验证码的实现
Oct 27 Javascript
js 模仿锚点定位的实现方法
Nov 19 Javascript
vue+Java后端进行调试时解决跨域问题的方式
Oct 19 Javascript
实例分析JS与Node.js中的事件循环
Dec 12 Javascript
AngularJS发送异步Get/Post请求方法
Aug 13 Javascript
ES6 Object方法扩展的应用实例分析
Jun 25 Javascript
如何使用three.js 制作一个三维的推箱子游戏
Jul 29 Javascript
微信小程序实现点击导航条切换页面
Nov 19 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
删除无限级目录与文件代码共享
2006/07/12 PHP
用php实现百度网盘图片直链的代码分享
2012/11/01 PHP
PHP整合七牛实现上传文件
2015/07/03 PHP
php中ob函数缓冲机制深入理解
2015/08/03 PHP
PHP中如何防止外部恶意提交调用ajax接口
2016/04/11 PHP
php进程间通讯实例分析
2016/07/11 PHP
golang与php实现计算两个经纬度之间距离的方法
2016/07/22 PHP
mongodb和php的用法详解
2019/03/25 PHP
利用javascript中的call实现继承
2007/01/22 Javascript
JavaScript语法着色引擎(demo及打包文件下载)
2007/06/13 Javascript
jquery特效 幻灯片效果示例代码
2013/07/16 Javascript
js改变img标签的src属性在IE下没反应的解决方法
2013/07/23 Javascript
jQuery实现为图片添加镜头放大效果的方法
2015/06/25 Javascript
使用bootstrap validator的remote验证代码经验分享(推荐)
2016/09/21 Javascript
javascript 动态样式添加的简单实现
2016/10/11 Javascript
webpack4 + react 搭建多页面应用示例
2018/08/03 Javascript
解决angularjs中同步执行http请求的方法
2018/08/13 Javascript
JS实现获取毫秒值及转换成年月日时分秒的方法
2018/08/15 Javascript
vue Treeselect 树形下拉框:获取选中节点的ids和lables操作
2020/08/15 Javascript
[03:04]DOTA2英雄基础教程 影魔
2013/12/11 DOTA
python动态性强类型用法实例
2015/05/09 Python
Python 读写文件的操作代码
2018/09/20 Python
HTML5 canvas基本绘图之绘制矩形
2016/06/27 HTML / CSS
html5自动播放mov格式视频的实例代码
2020/01/14 HTML / CSS
药学专业大学生个人的自我评价
2013/11/04 职场文书
电焊工工作岗位职责
2014/02/06 职场文书
小学庆六一活动方案
2014/02/28 职场文书
节约用水的口号
2014/06/20 职场文书
2014年国庆节活动总结
2014/08/26 职场文书
2015年学校办公室工作总结
2015/05/26 职场文书
教师岗位说明书
2015/09/30 职场文书
2016同学毕业寄语大全
2015/12/04 职场文书
《搭石》教学反思
2016/02/18 职场文书
Python OpenCV实现传统图片格式与base64转换
2021/06/13 Python
java中重写父类方法加不加@Override详解
2021/06/21 Java/Android
将MySQL的表数据全量导入clichhouse库中
2022/03/21 MySQL