美文网首页
Javascript的异常捕获机制

Javascript的异常捕获机制

作者: HelloAndyZhang | 来源:发表于2018-08-24 22:47 被阅读0次

try…catch语句

try{ 
//可能发生异常的代码 
}catch(error){ 
//发生错误执行的代码 
}
  1. 把有可能出的问题的代码放在 try 语句中。try语句中可以理论上可以写任何的代码,只要有一行代码出现问题,整个程序的执行流程就会立即调到catch语句中执行。
  2. 一旦try中有一行代码发生异常,则这行出错代码的后面的try中的其他语句都不会再执行。比如上面代码中的console.log(b);这行代码会出错,则立即去执行catch中的代码。所以console.log("我不会输出的,不要找了")这行代码则不会再执行
  3. 在执行catch中的代码之前,js引擎会首先根据错误类型自动创建一个错误,并通过catch后面的参数传递到catch中。不同的浏览器创建的error对象不一样,但是同创他们都包含一个message属性,值是这个错误的一些信息。
  4. catch中的代码执行完毕之后,会继续执行后面的代码,程序不会停止下来。

finally语句

<script>
    try{
        console.log(b);
        console.log("我不会输出的,不要找了")

    }catch(error){
        console.log("发生错误了")
    }finally {
        console.log("不管发生不发生错误,我都会执行")
    }
    console.log("我try catch后面的代码")
</script>
  1. 如果添加了 finally 语句,则 catch 语句可以省略。所以下面的代码也是正确的。
  2. 如果没有 catch 语句,则一旦发生错误就无法捕获这个错误,所以在执行完 finally 中的语句后,程序就会立即停止了。
  3. 在实际使用中,最好一直带着 catch 语句。

js中的错误类型

执行代码期间可能会发生的错误有多种类型。每种错误都有对应的错误类型,而当错误发生时,就 会抛出相应类型的错误对象。js共定义了下列 7 种错误类型:

  1. Error ‰
  2. EvalError
  3. RangeError ‰
  4. ReferenceError ‰
  5. SyntaxError ‰
  6. TypeError ‰
  7. URIError
说明:

Error类型是基本的错误类型,其他类型都继承自这个类型。
EvalError 类型的错误会在使用 eval()函数而发生异常时被抛出
TypeError 类型在 JavaScript 中会经常用到,在变量中保存着意外的类型时,或者在访问不存在的 方法时,都会导致这种错误

相关文章

  • Javascript的异常捕获机制

    try…catch语句 把有可能出的问题的代码放在 try 语句中。try语句中可以理论上可以写任何的代码,只要有...

  • js 异常处理

    一、Javascript的异常捕获机制 1.1 基本的try…catch语句 ES3开始引入了 try-catch...

  • 模拟异常的一种思路

    模拟的一种异常机制 用 __TRY() 设置捕获点; 用 __CATCH() 捕获异常; 用 __THROW() ...

  • Dart-4 异常捕获机制

    1.Flutter 异常捕获机制 Dart 中可以通过 try/catch/on /finally 来捕获代码块...

  • iOS 崩溃异常捕获

    iOS已经提供了捕获异常的机制 NSSetUncaughtExceptionHandler 我们就创建一个捕获cr...

  • eggjs异常捕获机制

    1. try catch捕获异步链中的方法 2. ctx.runInBackground(scope)捕获跳出异步...

  • c++ 异常

    异常机制 c++的异常机制与大多数语言相同,分为三个部分: 引发异常; 使用处理程序捕获异常; 使用try块; 通...

  • Dart

    Dart线程模型及异常捕获 Flutter 实战 Dart的内存回收机制 Dart GC

  • [转]Web应用上线之前程序员应该了解的技术细节

    开发 记录UI错误日志JavaScript 允许捕获异常。这些异常需要通过Ajax请求提交到日志服务,否则很难截获...

  • 15 异常处理

    15.1 异常处理机制 使用try...catch捕获异常:如果执行try块里的业务逻辑代码出现异常,则系统自...

网友评论

      本文标题:Javascript的异常捕获机制

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