分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 技术分享

js事件队列

发布时间:2023-09-06 02:26责任编辑:彭小芳关键词:js

1.js的执行是单线程的。

2.而当它遇到了window的setTimeout和setInterval这样的异步任务,js都默默地先不执行这些回调,而是继续向下执行其他js脚本,等到所有js脚本都解析执行完了,再执行回调。


3.那么有多个回调的时候执行顺序是怎么样的呢?

浏览器是多线程的,js执行线程只是它多个线程中的一个。

当js的执行线程看到了setTimeout,浏览器马上会调用其他线程把这个函数中的回调扔到浏览器的事件队列中,事件队列是先入先出的队列。

那么在js执行线程执行完所有脚本空闲的时候,事件队列中的事件回调,会一个一个被拿出来执行。

浏览器有一个内部大消息循环Event Loop(事件循环),会轮询事件队列并处理事件。

js事件队列

原文地址:https://www.cnblogs.com/my-577/p/10130693.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved