【前端学习——js】宏任务,微任务

pink老师讲解视频

https://www.bilibili.com/video/BV1G84y1B7hZ/?spm_id_from=333.788\&vd_source=5cef5968d539682b683e7d01b00ad01b

宏任务(浏览器,node发起)

  • script
  • 事件
  • ajax,fetch
  • 定时器 settimeout、setinterval

微任务(js引擎发起)

  • promise
    promise本身同步,但then、catch异步

代码可分为,执行顺序为:

同步代码
微任务异步代码
  • promise.then.catch
  • async/await
宏任务异步代码
  • script
  • 定时器

流程:

1.先将同步代码放到执行栈,微任务放到微任务队列(先进先出),宏任务也有队列

2.执行完同步代码后去微任务队列执行微任务,然后宏任务

相关推荐
swipe6 小时前
从 0 到 1 实现大文件上传:分片、秒传、断点续传、暂停、重试与服务端合并
前端·javascript·面试
爱勇宝6 小时前
我做了一个只用来搜歌词的小 App
android·前端·后端
甲维斯6 小时前
用AI还原《坦克大战》并3D化升级!
前端·人工智能·游戏开发
IT_陈寒7 小时前
SpringBoot自动配置坑了我一晚上,原来问题出在这
前端·人工智能·后端
kyriewen8 小时前
AI 生成的代码能跑就行?这 5 个坑迟早炸
前端·javascript·ai编程
kisshyshy8 小时前
🍦 雪糕、食堂、火车厢:三幅漫画吃透栈、队列与链表
javascript·算法
谷子在生长8 小时前
纯血鸿蒙自定义弹窗最佳实践:从「到处复制」到「一行调用」
前端·harmonyos
壹方秘境8 小时前
我用Go语言开发了一个跨平台的HTTPS抓包和调试工具
前端·后端·ios
神秘面具男8 小时前
HarmonyOS 6.0跨端远程控制
前端·后端
枫树下x8 小时前
NestJS基础框架
前端