关于promise知识点的补充

来源:8-8 Promise的then和catch如何影响状态的变化

Best_Coder_LCN

2021-05-12

我思考了一个问题

const p1 = Promise.reject(2).then(()=>{
  console.log(1);
}).catch(err=>{
  console.log(err);
})

// Promise.reject() 和 .catch() 都会返回一个 Promise
// 根据老师总结的两条规则,catch里边儿没有报错,后边跟着then()的话,就会执行then()
// 我这里想 Promise.reject() 是不是也应该执行then()
// 但是结果是执行了 catch()  console.log打印了2
// 查资料后发现
// reject() 和 catch() 虽然都会返回 Promise
// 但是 catch返回的Promise是无状态的? 这里有疑问
// reject() 返回的Promise的状态直接就是 rejected

另外提个疑问 catch()返回的Promise是什么状态的? pending吗? 那应该调用resolve()才行呀

写回答

2回答

Best_Coder_LCN

提问者

2021-05-12

现在就只剩知识点补充了

then() catch() resolve() reject() finally()

都会返回Promise,但是Promise的状态不同

0
0

Best_Coder_LCN

提问者

2021-05-12

抱歉,已经解决疑问了,人傻了, catch()返回的Promise在catch不报错的情况下是resolved状态的

0
0

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

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

4694 学习 · 1681 问题

查看课程