js是单线程语言
执行流程:同步任务 -> 事件循环
执行事件循环的前提是执行完所有同步任务
事件循环分:宏任务、微任务
进入事件循环的有:事件、请求、定时器等
微任务:promise.then()、async/await
宏任务:setTimeout、setInterval、dom、ajax
事件循环执行顺序:微任务 -> 宏任务(微任务 > DOM渲染 > 宏任务)
执行宏任务的前提是执行完所有微任务
参考:
js是单线程语言
执行流程:同步任务 -> 事件循环
执行事件循环的前提是执行完所有同步任务
事件循环分:宏任务、微任务
进入事件循环的有:事件、请求、定时器等
微任务:promise.then()、async/await
宏任务:setTimeout、setInterval、dom、ajax
事件循环执行顺序:微任务 -> 宏任务(微任务 > DOM渲染 > 宏任务)
执行宏任务的前提是执行完所有微任务
参考: