JS高级—14—异常处理
一、错误异常处理
二、throw关键字和系统内部写好的Error类
throw new Error(xxxx)
一般抛出的是error.stack;
调用栈里这一行信息表示全局环境;
三、捕获异常
抛出异常后有两种处理方式,
第一种:子函数没有进行异常处理,则把错误继续抛给调用它的父函数,如果它的父函数也没有对异常的处理,则沿着函数调用栈继续往下抛,直至抛到最顶层的函数中,也就是全局环境中,然后如果也没有,则程序终止运行,js线程被终止运行了;
第二种:trycatch捕获异常
出现的异常将会在catch进行处理(error.stack的信息会通过一个error传递给catch),想怎么处理就怎么处理,处理完后后续的代码会继续执行;
第三种:trycatchfinaily捕获异常
不管有没有异常,都会调用finaily;