宏任务与微任务

宏任务在下一轮Event Loop执行,微任务在本轮Event Loop的所有任务结束后执行。

常见宏任务: script\setTimeOut、 setInterval、I/O、setImmediate 、各种事件等

常见微任务:promise .then、promise . catch、promise.finally、process.nextTick、async await等

标题常见主线程任务(同步任务):promise实例对象的回调函数

执行顺序:主线程 > 微任务 > 宏任务
宏任务与微任务都能操作异步,
为了解决主线程任务过多的时候,异步回调等待时间国产的问题。用宏、微任务不同的优先级来先实现某些代码

标题宏、微任务的DOM渲染顺序

微任务的DOM渲染 > 主线程的DOM渲染 > 宏任务的DOM渲染

所以不要在.then等微任务中执行耗时的操作,否则会影响后续的DOM渲染与宏任务

标题JS执行机制

I/O、网路请求都是由操作系统执行

主线程:所有的同步任务按顺序执行的队形。又被称为执行栈

耗时的任务挂在主线程的任务队列里,当耗时的任务的回调时,才再将其挂在任务队列里中

主线程的任务都执行完之后才会执行任务队列的任务

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值