概念
之前是没有微队列这个概念的,ES6新增了promise和微队列这个概念
目前js执行代码大致分为三部分:
主线程:主线程上的代码按顺序执行,这没什么好解释的
宏队列:所有宏任务按顺序推送到宏队列中,例如 setTimeout ,onclick等都属于宏任务
微队列:Promise里的回调属于微任务,会推送到微队列中,
另外,微队列的优先级大于宏队列
核心概念
宏任务每次执行前,都会检查是否有微任务,如果有,就先执行微任务,再执行宏任务
之前是没有微队列这个概念的,ES6新增了promise和微队列这个概念
目前js执行代码大致分为三部分:
主线程:主线程上的代码按顺序执行,这没什么好解释的
宏队列:所有宏任务按顺序推送到宏队列中,例如 setTimeout ,onclick等都属于宏任务
微队列:Promise里的回调属于微任务,会推送到微队列中,
另外,微队列的优先级大于宏队列
宏任务每次执行前,都会检查是否有微任务,如果有,就先执行微任务,再执行宏任务