第32题 关于async/await代码执行顺序

    function wait (delay) {
      return new Promise(r => {
        setTimeout(() => {
          r('execute', console.log('execute'))
        }, delay)
      })
    }
    // async function series () { // 1
    //   await wait(500);
    //   await wait(500);
    //   console.log('done')
    // }
    async function series () { // 2
      const wait1 = wait(500)
      const wait2 = wait(500)
      await wait1;
      await wait2;
      console.log('done')
    }
    series()
  • 第一个series():
    // 1. 500ms后
    'execute'
    // 2. 500ms后
    'execute''done' 一起打印
  • 第二个series:
    // 500ms后同时打印出
    'execute'
    'execute'
    'done'
Last Updated:
Contributors: leeguooooo