-
发生的异常被catch捕获到之后,执行完catch中的代码后,还是会继续执行.then中的代码。
-
如果想要阻止后续代码继续执行,可以使用 throw new Error 向外抛出错误,或者使用promise的reject()。
注: 1、正常执行的代码如果第一句出现异常,就不会执行第二句以及后面的所有正常代码 2、对于 try catch finally而言,无论是否出现异常,异常是否被catch捕获,finally中的代码都会被执行,即使 try 或者 catch 中有 return 语句,finally 中的代码还是会执行,finally 执行完后,如果try中的异常被catch捕获,就会继续执行try catch外面的其他无关代码,如果没有被捕获,就会继续向外抛出异常,即中断执行后续所有代码。 如下所示: try{ //正常执行的代码 }catch (e){ //出错后执行的代码 }finally{ //无论正常执行还是出错,之后都会执行的代码 } //跟上面try catch无关的代码