美文网首页
验证链式Promise执行流程

验证链式Promise执行流程

作者: stanf1l | 来源:发表于2019-10-30 11:02 被阅读0次

    我们知道Promise.then(callback)callback调用的时间点为Promise状态变为resolved

    new Promise((resolve, reject) => {
      do something
      ...
      resolve(value)
    }).then((res) => {
      do other things
      ...
    }).then(callback)
    

    如上,我想要验证第二个thencallback的调用是在第一个then中的回调执行完之后,也就是验证第一个then返回的Promise的resolve时间点是在它执行完回调之后

    代码如下

    Promise.resolve().then(() => {
      for (let i = 1; i < 100; i++) console.log(1)
    }).then(() => {
      console.log(2)
    })
    
    // expect: 
    // 1(99)
    // 2
    

    其实,当我们开始思考语言机制的时候,更好的做法是看 源码

    image.png

    相关文章

      网友评论

          本文标题:验证链式Promise执行流程

          本文链接:https://www.haomeiwen.com/subject/sofovctx.html