日期:2014-05-16  浏览次数:20425 次

JavaScript--异常处理

JavaScript--异常处理
2010年06月16日
   有两种在网页中捕获错误的方法:
  ??使用 try...catch 语句。(在 IE5+、Mozilla 1.0、和 Netscape 6 中可用)
  ??使用 onerror 事件。这是用于捕获错误的老式方法。(Netscape 3 以后的版本可用)
  注意:chrome、opera 和 safari 浏览器不支持 onerror 事件。
  try...catch try
  {
  //在此运行代码
  }
  catch(err) //err是用户自定义的变量,err的类型取决于throw语句
  {
  //在此处理错误
  }
  注意:try...catch 使用小写字母。大写字母会出错。
  try
  {
  throw "this is an exception"; //这里抛出一个字符串异常
  //用户可以抛出的四类异常:字符串、整数、布尔值、对象
  }
  catch(err)            //这里err是一个字符串
  {
  alert(err);      //显示:this is an exception
  alert(err.name); //显示:undefined
  alert(err.name); //显示:undefined
  } try
  {
  fff();   //这里将导致异常抛出
  }
  catch(err)            //这里err是一个Error类异常对象
  {
  alert(err);          //显示:[object error] 等同于err.toString()
  alert(err.toString()); //显示:[object error]
  alert(err.name);      //显示:TypeError
  alert(err.name);      //显示:缺少对象
  } onerror 事件 ??使用 onerror 事件是一种老式的标准的在网页中捕获 Javascript 错误的方法。
  ??只要页面中出现脚本错误,就会产生 onerror 事件。
  ??如果需要利用 onerror 事件,就必须创建一个处理错误的函数。
  ??错误处理函数使用三个参数来调用:msg错误消息、url(发生错误页面的url)、line(发生错误的代码行)。 
  ??浏览器是否显示标准的错误消息,取决于错误处理函数的返回值。
  ??如果错误处理函数返回值为 false,则在控制台 (JavaScript console) 中显示错误消息。反之则不会。
  throw语句 throw 声明的作用是创建 exception(异常或错误)。
  throw (exception) ??exception 可以是字符串、整数、逻辑值或者对象。
  ??使用小写字母编写 throw。使用大写字母会出错! Error 在JavaScript中,Error类表示一个异常,是其他异常类的父类。Error类的构造函数: 两个属性
  ??name:表示异常的类型
  ??message:表示异常详细信息字符串
  JavaScript还预定义了其他一些异常类,这些类都是Error类的子类: 1.EvalError       //当不正确使用eval函数时,会抛出该类的一个实例
  2.RangeError      //当数值超出合法的数值范围时,会抛出该类的一个实例
  3.ReferenceError  //当读取一个不存在的变量的值时,会抛出该类的一个实例
  4.SyntaxError     //当JavaScript中出现语法错误时,会抛出该类的一个实例
  5.TypeError       //当JavaScript中类型不符合要求时,会抛出该类的一个实例
  6.URIError        //当字符串不符合编码或解码要求时,会抛出该类的一个实例