JavaScript try catch finally

JavaScript try catch finally教程

JavaScript 中,每一个 try 语句后面都可以对应一个 catch 语句,同时,每一个 try 语句后面,还可以对应一个 finally 子句,当然,也可以不带 finally 字句,如果带 finally 字句,那么 finally 字句最多只能带一个。

try 字句后面的 finally 子句用来表示,不管前面的代码如何执行了,一定要执行的代码那么我们可以将其放在 finally 子句里,即使是没有触发异常,即没有执行 catch 的代码,那么 finally 字句的代码一定也会执行。

JavaScript try catch finally语句详解

语法

try{ // 需要检测异常的代码 }catch(error){ // 处理异常的代码 }finally{ // 一定要执行的语句 }

说明

我们在异常捕获时,将一定要执行的代码放在 finally 语句中。

案例

JavaScript try catch finally语句捕获异常

我们在异常处理时,将一定要处理的代码放在 finally 中

<!DOCTYPE html> <html> <head> <title>JavaScript try catch</title> <script type="text/javascript"> console.log("嗨客网(www.haicoder.net)"); try{ var array = new Array(20); }catch(error){ console.log("Error =", error); }finally{ console.log("Call finally"); } console.log("Over"); </script> </head> </html>

程序运行后,控制台输出如下:

05_javascript try catch finally.png

我们使用 new 创建了一个数组 array,同时,我们使用了 try catch finally 语句将创建数组的代码使用了异常捕获包围,最后我们运行该程序,程序正常运行,没有走到 catch 语句。

同时,我们可以看到,程序输出了 finally 语句的内容。现在,我们将程序修改如下,触发异常:

<!DOCTYPE html> <html> <head> <title>JavaScript try catch</title> <script type="text/javascript"> console.log("嗨客网(www.haicoder.net)"); try{ var array = new Array(-20); }catch(error){ console.log("Error =", error); }finally{ console.log("Call finally"); } console.log("Over"); </script> </head> </html>

程序运行后,控制台输出如下:

06_javascript try catch finally.png

这时,我们可以看到,程序触发了异常,同样走到了 finally 语句的内容,因此,我们可以看到,不管程序触发或者不触发异常,都会走到 finally 语句的内容。

JavaScript try catch finally异常捕获教程总结

try 字句后面的 finally 子句用来表示,不管前面的代码如何执行了,一定要执行的代码那么我们可以将其放在 finally 子句里,即使是没有触发异常,即没有执行 catch 的代码,那么 finally 字句的代码一定也会执行。