有个问题哈,promise的catch触发条件好像是捕捉到异常后触发的吧,不是因为执行reject才触发的catch

来源:7-3 promise的基本使用

触发bfc

2020-05-20

视频的好像是ajax请求异常了才会触发catch,而不是执行reject后触发的catch
getData(url)
.then(() => { }, () => {})
.catch(err => {})

我记的是resolve执行会触发then中的第一个参数函数,reject会触发then中第二参数函数
而caitch会捕捉执行过程中发生的错误,比如ajax请求中请求异常、变量为定义就使用等等,当然可以通过throw new Error(“xxx”)手动抛出异常错误

写回答

2回答

双越

2020-05-21

catch 也会捕获到 rejcet 的报错,你可以亲自试试。

1
9
触发bfc
非常感谢!
2020-05-25
共9条回复

触发bfc

提问者

2020-05-20

如果我说的是对的话,是不是在ajax请求错误回调onerror函数中执行reject(err)就是多余无用的

0
0

一天时间高效准备前端技术一面 匹配大厂面试要求

针对时下面试高频考点,帮助新人js面试快速通关

4641 学习 · 1667 问题

查看课程