js执行过程

代码执行过程:
1.宿主环境(浏览器)把一段代码给js引擎–js引擎按顺序执行 。(因为是宿主环境发起,这也是一条宏任务
2.(需要知道每个宏观任务尾部会跟着微任务队列)当有微观任务出现,会把他放在微任务队列中,在上一步的宏任务执行完后再执行
3.若有宏观任务出现,会放入宏观任务队列中,等待上一步微任务队列都执行完以后执行一条宏观任务,重复第二步

技巧:
1.分析有几个宏观任务
2.每个宏观任务后面带哪几个微观任务
3.确定宏观任务的执行顺序

网上有很多关于setTimeout和promise的例题与解析,上面这个技巧是我觉得很好记忆的。

注:
宿主环境会提供一些api如setTimeout给js引擎使用。宿主发起的被称为宏观任务。
es5 promise是js自己发起的,不是从宿主环境发起,被称为微观任务。

极客时间–重学前端

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值