以下为ChatGPT自动生成的解答,正确与否请自行判断。 也许你也可以从大家的发帖中找到想要的答案!
BFE.devAI解答 - JavaScript 小测验
50. async await
输出结果是:
4
1
3
6
8
2
7
5
解析:
- 首先主线程执行同步代码,输出4;
- 执行async1()函数,输出1,然后执行await async2()函数,输出3,因为async2()函数是异步函数,会被放到任务队列中,等待Event Loop来执行;
- 输出6,因为Promise是同步代码,不需要等待异步操作;
- 输出8;
- 当前主线程执行完毕,开始执行异步代码,先执行任务队列中的async2(),输出2;
- 接着执行Promise的then方法,输出7;
- 最后执行定时器回调函数,输出5。