try catch 无法捕获异步异常
发布网友
发布时间:2024-10-02 08:33
我来回答
共1个回答
热心网友
时间:2024-10-23 08:51
try catch 并不能捕获所有的异常,所以,并不是写个try catch就可以捕获一切异常了
try catch 能捕获到的仅仅是 try 模块内执行的同步方法的异常(try执行中且不需要异步等待),这时候如果有异常,就会将异常抛到catch中。
除此之外,try catch执行之前的异常 以及 try catch 内的异步方法所产生的异常(例如ajax请求、定时器),都是不会被捕获的!
try catch 异常捕获 同步
结果
try catch 异常捕获 异步
结果
如果有异步函数的话,就不需要用try catch 了, 直接用Promise就好了