求大神,promise执行顺序的问题

new Promise((resolve,reject) => {
  console.log('外部promise')
  resolve()
})
.then(() => {
  console.log('外部第一个then')
  new Promise((resolve,reject) => {
    console.log('内部promise')
    resolve()
  })
  .then(() => {
    console.log('内部第一个then')
    return Promise.resolve()
  })
  .then(() => {
    console.log('内部第二个then')
  })
})
.then(() => {
  console.log('外部第二个then')
})
.then(() => {
  console.log('外部第三个then')
})
.then(() => {
  console.log('外部第四个then')
})
.then(() => {
  console.log('外部第五个then')
})
.then(() => {
  console.log('外部第六个then')
})

执行结果如下:

外部promise

外部第一个then

内部promise

内部第一个then

外部第二个then

外部第三个then

外部第四个then

内部第二个then

外部第五个then

外部第六个then

 

求大佬指教,为啥只延迟两次微任务

return Promise.resolve()相当于两个.then()

https://segmentfault.com/a/1190000039361741

感谢回答

 

您好,我是有问必答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632