Promise行为记录 - catch和then都被运行触发

#js,#javascript,#es6,#promise

今天封装http。运行结果和预期不一样。

经过和我老大华哥请教,和我后面在chrome100.0.4896.75的测试。记录本文。

1、promise 的 catch 和 then 的顺序会影响结果

new Promise((_resolve, rejects) => {
  setTimeout(() => {
    rejects();
  }, 100);
})
  .catch(() => {
    console.log('1');
  })
  .then(() => {
    console.log('2');
  })

 

 

 

2、promise 的 then 后面 跟 then 可以 运行后面的then,但catch后面跟catch 不能运行后面的那个catch

new Promise((_resolve, rejects) => {
  setTimeout(() => {
    rejects();
  }, 100);
})
  .catch(() => {
    return console.log('1');
  })
  .then(() => {
    console.log('2');
  })
  .catch(() => {
    console.log('3');
  });

 

posted @   Noliebe  阅读(521)  评论(1编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示