理解Promise的执行顺序

  1. 优先执行Promise实例化函数中的内容
  2. then中的函数被加入微任务队列
  3. 执行到resolve后,当前上下文执行完成后,会立刻执行下一个then中的内容

执行结果为序号顺序

new Promise(resolve => {
  resolve();
})
  .then(() => {
    new Promise(resolve => {
      console.log(100);
      resolve();
      console.log(101);
    })
      .then(() => {
        console.log(111);
      })
      .then(() => {
        console.log(222);
      });
  })
  .then(() => {
    new Promise(resolve => {
      resolve();
    })
      .then(() => {
        new Promise(resolve => {
          resolve();
        })
          .then(() => {
            console.log(444);
          })
          .then(() => {
            console.log(666);
          });
      })
      .then(() => {
        console.log(555);
      });
  })
  .then(() => {
    console.log(333);
  });
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。