JavaScript 异常情况的使用

141 阅读1分钟

当代码遇到意想不到的问题时,处理这种情况的JavaScript习惯性方法是通过异常来实现的

当代码遇到一个意外的问题时,处理这种情况的JavaScript惯用方法是通过异常。

创建异常

使用throw 关键字可以创建一个异常。

其中value 可以是任何JavaScript值,包括一个字符串、一个数字或一个对象。

一旦JavaScript执行了这一行,正常的程序流程就会停止,控制权会被保留到最近的异常处理程序

处理异常

异常处理程序是一个try/catch 语句。

try 块中包含的代码行中产生的任何异常都会在相应的catch 块中处理。

try {
  //lines of code
} catch (e) {

}

e 在这个例子中是异常值。

你可以添加多个处理程序,它们可以捕捉不同种类的错误。

finally

为了完成这个语句,JavaScript还有一个叫做finally 的语句,它包含的代码无论程序流程如何,如果异常被处理或不处理,如果有异常或没有异常,都会被执行。

try {
  //lines of code
} catch (e) {

} finally {

}

你可以在没有catch 块的情况下使用finally ,作为清理你可能在try 块中打开的任何资源的方式,如文件或网络请求。

try {
  //lines of code
} finally {

}

嵌套的try

try 块可以被嵌套,并且异常总是在最近的catch块中处理。

try {
  //lines of code

  try {
    //other lines of code
  } finally {
    //other lines of code
  }

} catch (e) {

}

如果在内部try ,就会在外部catch 块中处理一个异常。