try…catch 语句子

相似情形下,我们老少用到 try…catch 语句子,但是有时为测试代码中的错误,也出或会见就此到。小白我吗在工作中用到过。那么好之顺序设计,什么时会为此到为?

try…catch
一般用来捕获宿主对象或ECMAScript抛来的那个。

1 try{
2   // 此处运次代码
3 } catch(err) {
4   // 此处处理代码
5 }

【注意】该语句严格区分轻重缓急写,使用大写字母会出错。

 

与此同时,try…catch…finally 为JS 实现错误处理:

try {
       tryStatements   // 必选项,可能发生错误的语句
} catch(exception) {  // exception 可选项,任何变量名,exception的初始化值是扔出的错误的值
       catchStatements   //可选项,处理在相关联的 tryStatement 中发生的错误的语句
} finally {
       finallyStatements   // 可选项,在所有其他过程发生之后无条件执行的语句
}

try…catch…finally 语句提供了平栽方法来处理或来在叫定代码块被的一些或整荒谬,同时据维持代码的周转。如果发生了程序员没有拍卖的缪,JS
只叫用户提供它的便错误信息,就好象没有错误处理同。

tryStatements 参数包含可能发误的代码,而 catchStatement 则包含处理其他有了之荒唐的代码。如果以 tryStatements 中发生了一个错误,则程序控制被染于 catchStatements 来处理。exception 的初始化值是发出在 tryStatements 中的错误的价。如果不当不产生,则无执行 catchStatements

倘若在跟生误的 tryStatements 相关联的 catchStatements 中未能够处理该错误,则以 throw 语句来传播、或重扔出这个错误让再尖端的错误处理程序。

在履完 tryStatements 中之口舌,并以 catchStatements 的有错误处理发生之后,可无偿履行 finallyStatements 中的说话。

要小心,即使在 try 或 catch 块中回到一个讲话,或当 catch 块重新抛来一个左,仍然会履行 finallyStatements 编码。
一般将保险 finallyStatments 的运作,除非有无处理的失实。(例如,在 catch 块中出运行时错)。