【前端学习——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.执行完同步代码后去微任务队列执行微任务,然后宏任务

相关推荐
Y1anoohh几秒前
驱动学习专栏--字符设备驱动篇--2_字符设备注册与注销
linux·c语言·驱动开发·学习
diang1 分钟前
Vue3 + Ant Design 实现 Excel 模板导入表格数据
前端·vue.js
doria小鱼1 分钟前
Vue3+Swiper实现PC端横向滑动拖拽
前端·vue.js
李梦晓2 分钟前
@vueuse/motion、motion-v、@motionone/vue三个动画库的区别和联系
前端·vue.js
Wythzhfrey4 分钟前
单片机Day05---静态数码管
c语言·单片机·嵌入式硬件·学习·c#·51单片机
kovli28 分钟前
红宝书第十一讲:超易懂版「ES6类与继承」零基础教程:用现实例子+图解实现
前端·javascript
eason_fan29 分钟前
解决nvm安装指定版本node失败的方法
前端·node.js
bst@微胖子30 分钟前
Flutter项目之设置页
android·javascript·flutter
作业逆流成河32 分钟前
🔥🔥🔥 enum-plus:前端福利!介绍一个天花板级的前端枚举库
前端
尘寰ya40 分钟前
如何实现一个“纯净”的空对象(无原型链属性)?
javascript·面试·原型模式