当前位置: 首页 > news >正文

什么是事件循环

JS中渲染分为同步任务和异步任务

  • 同步任务都在主线程上执行,形成一个执行栈
  • 异步任务通过回调函数来实现,通常用于处理耗时的,还有资源加载的场景
    • 异步任务都会被放入**任务队列(消息队列)**中

任务队列分为两种,一种是宏任务,一种是微任务

宏任务是指,在主线程中执行的较大任务,通常包括有:

  • setTimeout() 定时器
  • setInterval()
  • I/O操作
  • script脚本的渲染等

微任务是相对较小的异步任务

  • Promise的then和 catch方法

什么是事件循环机制

事件循环机制,就是,js在处理的时候
先执行执行栈中的同步任务,将异步任务放入到任务队列中
一旦执行栈中的所有同步任务执行完毕,系统就会按次序读取,检查微任务队列中是否被清空,如果还有微任务未执行,就先执行所有队列中的微任务(也就是将所有微任务压入执行栈中),然后再去执行宏任务,执行完毕当前宏任务之后,再去检查微任务队列,如此往复,直到任务队列被全部清空

因为JS是单线程的,为了防止阻塞页面,所以需要用到事件循环机制

相关文章:

  • matlab 环形单层柱状图
  • 聊一聊接口自动化测试脚本如何进行维护的?
  • Moldflow模流分析教程
  • 轨道六要素的物理意义与几何表示
  • Win10驱动程序强制签名怎么禁用/开启?
  • IEEE:新进展!AI 模型可以生成 3D 脑部MRI 图像,同时解决数据稀缺和隐私问题
  • 第32讲:卫星遥感与深度学习融合 —— 让地球“读懂”算法的语言
  • 打靶日记 zico2: 1
  • Pandas数据合并与重塑
  • 2025.04.19-阿里淘天春招算法岗笔试-第一题
  • 《Android 应用开发基础教程》——第二章:Activity 与生命周期详解
  • MATLAB 控制系统设计与仿真 - 38
  • ACM ICPC算法基础包括哪几类
  • Git命令归纳
  • 国产之光DeepSeek架构理解与应用分析04
  • 43.[前端开发-JavaScript高级]Day08-ES6-模板字符串-展开运算符-ES7~ES11
  • 免费多平台运行器,手机畅玩经典主机大作
  • 一个改善Entity Framework异常处理和错误信息的开源项目
  • 网络--应用层自定义协议与序列化
  • 捋一遍Leetcode【hot100】的二叉树专题
  • 市民建议公交广播增加“请勿大声喧哗”提示,上海交通委回复
  • 接续驰援,中国政府援缅卫生防疫队出发赴缅
  • 女子伸腿阻止高铁关门等待同行人员,相关部门已介入调查
  • 2025“上海之夏”向全球邀约,首批城市定制活动集中亮相
  • 中国驻德国大使馆公使曾颖如,调任广州医科大学党委书记
  • 英国称担忧中国无人机拍摄英国重要基建高清图像,外交部回应