就是如果有返回promise的方法,是不是每次调用都要写一个catch去捕获reject,不写的话,当await Method()时会不会一直堵塞住啊
就是如果有返回promise的方法,是不是每次调用都要写一个catch去捕获reject,不写的话,当await Method()时会不会一直堵塞住啊
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
任何一个
await
语句后面的 Promise 对象变为reject
状态,那么整个async
函数都会中断执行。如果不catch, async函数直接抛出reject了, async里在await后面的代码是不会执行的。一般写catch有以下几种方法(推荐使用第一种方法):
1 将await代码写在try catch代码块中, 这样当await抛出异常时直接被catch捕获,不会影响下面代码的运行。
2 另一种方法是
await
后面的 Promise 对象再跟一个catch
方法,处理前面可能出现的错误。