先执行主流程里的同步任务如果遇到异步任务先加入异步队列,处理完全部同步任务之后,去执行异步队列里的微任务,最后执行异步队列里的宏任务。
每一个微任务就是一个流程,比如微任务A里有同步任务A1、微任务A2、宏任务A3,会先执行A里的A1同步任务,再执行A2最后执行A3。微任务A执行完之后执行微任务B,执行完所有微任务执行宏任务,宏任务和微任务的执行是一样的。
常见的微任务:promise的then和catch
常见的宏任务:定时器
参考文档
吃透js执行顺序及异步实战管理技巧经验_哔哩哔哩_bilibili 3:00 - 18:00
什么是宏任务、微任务?宏任务、微任务有哪些?又是怎么执行的?_宏任务和微任务_F N Janine的博客-优快云博客
js中的宏任务与微任务 - 知乎