美文网首页
js异常错误处理

js异常错误处理

作者: 风起时丶 | 来源:发表于2018-03-29 16:11 被阅读0次

    记一次最近工作中遇到问题的处理方法。整理自https://www.cnblogs.com/luluping/archive/2011/02/14/1954092.html

    当 JavaScript 引擎执行 JavaScript 代码时,可能会发生各种错误:比如数组索引越界、类型不匹配或者语法错误等。

    当javascript抛出错误的时候,JavaScript 引擎通常会停止,并生成一个错误消息,往往会导致整个页面的假死。

    try 语句测试代码块的错误。

    catch 语句处理错误。

    throw 语句创建自定义错误。

    JavaScript 测试和捕捉

    try 语句允许我们定义在执行时进行错误测试的代码块。

    catch 语句允许我们定义当 try 代码块发生错误时,所执行的代码块。

    JavaScript 语句 try 和 catch 是成对出现的。

    Throw 语句

    throw 语句允许我们创建自定义错误。

    正确的技术术语是:创建或抛出异常(exception)。

    如果把 throw 与 try 和 catch 一起使用,那么您能够控制程序流,并生成自定义的错误消息。

    常用方法:

     try {

          // 此处是可能产生例外的语句

      } catch(error) {

          // 此处是负责例外处理的语句

      } finally {

          // 此处是出口语句

      }

    其中Error对象有两个属性:name属性表示例外的类型,message属性表示例外的含义。

    Error.name的取值一共有六种,如下:

      Error:()的使用与定义不一致

      RangeError:数值越界

      ReferenceError:非法或不能识别的引用数值

      SyntaxError:发生语法解析错误

      TypeError:操作数类型错误

      URIError:URI处理函数使用不当

    自定义错误信息:

    上述的六种Error类型基本上覆盖了脚本程序运行时所可能发生的错误。除了这些类型以外,我们还可以使用Error构造器来自定义例外类型,其语法如下:

      myError = new Error(msg)

      其中msg参数表示所定义的新例外的message属性值。同时,我们还可以创建新的对象类型以作为Error的子类型:

    function MyError(msg) {

    this.name = "MyError"

    this.message = msg

    }

    MyError.prototype = new Error;

      然后,我们就可以创建自定义错误子类的实例:

      myError = new MyError("My error message")

    try…catch…finally语句的变形使用,即try…catch或者try…finally。

    相关文章

      网友评论

          本文标题:js异常错误处理

          本文链接:https://www.haomeiwen.com/subject/fjqcdxtx.html