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

石家庄高端外贸建站网站建设的技术支持

石家庄高端外贸建站,网站建设的技术支持,衡水景县专业做淘宝网站公司,网站首页百度收录怎么做文章目录 1. NodeJS1.1 Node.js 事件循环概念1.2 Node.js 事件循环工作流程1.3 Node.js 事件循环示例 2. 浏览器2.1 浏览器事件循环概念2.2 浏览器事件循环工作流程2.3 浏览器事件循环示例 1. NodeJS 1.1 Node.js 事件循环概念 在 Node.js 中,事件循环由 libuv 库…

文章目录

  • 1. NodeJS
    • 1.1 Node.js 事件循环概念
    • 1.2 Node.js 事件循环工作流程
    • 1.3 Node.js 事件循环示例
  • 2. 浏览器
    • 2.1 浏览器事件循环概念
    • 2.2 浏览器事件循环工作流程
    • 2.3 浏览器事件循环示例

1. NodeJS

1.1 Node.js 事件循环概念

Node.js 中,事件循环libuv 库实现,它是跨平台的,可以让 Node.js 高效地处理非阻塞 I/O 操作。

1.2 Node.js 事件循环工作流程

事件循环的工作流程如下

步骤描述
1事件循环开始 (Start)
2执行同步任务 (Sync Tasks) 并将它们添加到调用栈 (Call Stack)
3检查宏任务 (Check Macro Tasks) 并将它们添加到宏任务队列 (Macro Tasks Queue)
4执行宏任务 (Execute Macro Tasks)
5检查微任务 (Check Micro Tasks) 并将它们添加到微任务队列 (Micro Tasks Queue)
6执行微任务 (Execute Micro Tasks)
7再次检查宏任务 (Check Macro Tasks) 并循环执行上述步骤直到所有任务执行完毕
8事件循环结束 (End)

1.3 Node.js 事件循环示例

console.log('Start');setTimeout(() => {console.log('setTimeout');
}, 0);setImmediate(() => {console.log('setImmediate');
});Promise.resolve().then(() => {console.log('Promise');
});process.nextTick(() => {console.log('nextTick');
});console.log('End');// 输出:
// Start
// End
// nextTick
// Promise
// setTimeout
// setImmediate

2. 浏览器

2.1 浏览器事件循环概念

浏览器中,事件循环由 JavaScript 引擎(如 V8)和 Web APIs 共同实现。

2.2 浏览器事件循环工作流程

事件循环的工作流程与 Node.js 类似,但有一些细节有所不同:

步骤描述
1事件循环开始 (Start)
2执行同步任务 (Sync Tasks) 并将它们添加到调用栈 (Call Stack)
3检查宏任务 (Check Macro Tasks) 并将它们添加到宏任务队列 (Macro Tasks Queue)
4执行宏任务 (Execute Macro Tasks)
5检查微任务 (Check Micro Tasks) 并将它们添加到微任务队列 (Micro Tasks Queue)
6执行微任务 (Execute Micro Tasks)
7再次检查宏任务 (Check Macro Tasks) 并循环执行上述步骤直到所有任务执行完毕
8事件循环检查是否有任何 Web APIs 任务需要执行 (如 DOM 事件、fetch 请求)
9如果有 Web APIs 任务需要执行,将它们添加到任务队列 (Task Queue) 并执行
10事件循环检查是否有任何 I/O 操作完成
11如果有 I/O 操作完成,将它们添加到任务队列 (Task Queue) 并执行
12事件循环检查是否有任何 setImmediate 任务需要执行
13如果有 setImmediate 任务需要执行,将它们添加到任务队列 (Task Queue) 并执行
14事件循环检查是否有任何任务需要执行 (包括宏任务、微任务、Web APIs 任务、I/O 操作完成的任务、setImmediate 任务)
15如果有任务需要执行,将它们从任务队列中取出并执行
16事件循环结束 (End)

2.3 浏览器事件循环示例

console.log('Start');setTimeout(() => {console.log('setTimeout');
}, 0);document.addEventListener('DOMContentLoaded', () => {console.log('DOMContentLoaded');
});Promise.resolve().then(() => {console.log('Promise');
});requestAnimationFrame(() => {console.log('requestAnimationFrame');
});console.log('End');// 输出:
// Start
// End
// Promise
// requestAnimationFrame
// DOMContentLoaded
// setTimeout
http://www.hkea.cn/news/491969/

相关文章:

  • 贵阳网站备案百度网站优化方案
  • 单位网站建设论文怎么做竞价托管
  • 建筑公司网站有哪些谈谈自己对市场营销的理解
  • 做ppt音乐怎么下载网站企业培训课程有哪些
  • magento网站建设网站优化排名软件网站
  • 做生鲜食品最好的网站网络推广及销售
  • 销售管理系统需求分析长沙seo代理
  • 站长网站查询深圳百度关键字优化
  • 用net语言做网站平台好不好企业培训师资格证报考2022
  • 成都定制网站设竞价推广遇到恶意点击怎么办
  • 制作视频网站建设友链交易网
  • 做外贸是不是要有网站腾讯企点app下载安装
  • 网站开发快递文件国外网站怎么推广
  • 网站和搜索引擎站长论坛
  • 做违法网站会怎样外贸独立站怎么建站
  • 云主机建网站教程深圳全网推互联科技有限公司
  • 做网站赚50万谷歌搜索引擎363入口
  • 台州网站设计外包网页制作公司排名
  • 网站建设投标文件范本亚马逊提升关键词排名的方法
  • 学做网站需要多长时间免费推广平台排行
  • wordpress运行php 404360优化大师下载
  • seo排名网站 优帮云线上推广的三种方式
  • 平凉哪有做网站的百度推广登录入口官网网
  • 娄底网站优化自建网站平台有哪些
  • 做网站需要多少兆空间wix网站制作
  • 哪些网站教做生物实验今日新闻联播
  • 铜川市住房和城乡建设局网站信息流广告哪个平台好
  • 太原市建设交易中心网站首页百度手机助手app安卓版官方下载
  • 昆山网站建设网站建设郑州网络推广哪个好
  • 瑜伽网站设计国外推广网站