因为是异步执行的,所以后面的可能会先执行。
先执行同步任务,然后是异步先微任务,后宏任务。.then是微任务
要理解这个,你就要先弄懂,同步和异步的区别,异步在执行过程中,程序是可以继续向下执行的,所以就会出现你现在的结果
ES6 入门教程 https://es6.ruanyifeng.com/?search=async&x=0&y=0#docs/async
【JS】深入理解事件循环,这一篇就够了!(必看) - 知乎 最近在看关于js的事件循环机制,(很多公司必问的面试题)看了几篇文章后准备总结出来分享给大家 众所周知,JavaScript 是一门单线程语言,虽然在 html5 中提出了 Web-Worker ,但这并未改变 JavaScript 是单线程… https://zhuanlan.zhihu.com/p/87684858
需要了解事件循环和宏任务和微任务