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

网站目录怎么做和生活爱辽宁免费下载安装

网站目录怎么做,和生活爱辽宁免费下载安装,下载wordpress建站程序,网站建设的相关技术方案1.请描述Event loop(事件循环)的机制。 JS是单线程的,异步需要基于毁掉来实现,event loop 就是异步回调的实现原理。 同步代码,一行一行放在Call Stack执行,遇到异步任务,标记一下让其他线程去处…

1.请描述Event loop(事件循环)的机制。
JS是单线程的,异步需要基于毁掉来实现,event loop 就是异步回调的实现原理。
同步代码,一行一行放在Call Stack执行,遇到异步任务,标记一下让其他线程去处理(定时,网络请求等),其他线程处理完毕就放到callback Queue, 如果Call stack清空(即同步代码执行完),开始执行当前的微任务和微任务引发的微任务,执行完毕微任务队列,然后尝试进行DOM渲染,渲染结束,Event loop开始工作,轮询查找Callback Queue, 如果有则移动到Call Stack执行,然后继续重复上述步骤(永动机一样)。

2.什么是宏任务和微任务,两者有什么区别?
宏任务: setTimeout、setInterval、Ajax、DOM事件
微任务 :Promise、 async/await、
微任务执行时机比宏任务要早,微任务在DOM渲染前触发,宏任务在DOM渲染后出触发。微任务是ES6语法规定,宏任务是由浏览器规定的
3.Promise 有哪三种状态?如何变化?
三种状态:pending\resolved\rejected
pending ->resolved或pending -> rejected,变化不可逆。
resolved 会触发then回调,rejected会触发catch回调,只要回调里面没有报错,无论是then或catch返回的都是resolved状态,报错时会返回rejected状态。
4.async/await Promise的关系
执行async函数,返回的是一个Promise对象;await相当于Promise的then; try…catch可捕获异常,代替了Promise的catch。await后边的内容都可以当作异步回调的内容。

5.手写Promise

  • 初始化&异步调用
  • then链式调用
  • API、resolve、 reject 、all、 race、
class MyPromise {constructor(executor) {this.state = "pending";this.value = undefined;this.onResolveCallbacks = [];this.onRejectCallbacks = [];const resolve = (value) => {if (this.state === "pending") {this.state = "fulfilled";this.value = value;this.onResolveCallbacks.forEach((callback) => callback(this.value));}};const reject = (reason) => {if (this.state === "pending") {this.state = "rejected";this.value = reason;this.onRejectCallbacks.forEach((callback) => callback(this.value));}};try {executor(resolve, reject);} catch (error) {reject(error);}}then(onResolve, onReject) {return new MyPromise((resolve, reject) => {if (this.state === "fulfilled") {try {const result = onResolve(this.value);resolve(result);} catch (error) {reject(error);}} else if (this.state === "rejected") {try {const result = onReject(this.value);resolve(result);} catch (error) {reject(error);}} else {this.onResolveCallbacks.push((value) => {try {const result = onResolve(value);resolve(result);} catch (error) {reject(error);}});this.onRejectCallbacks.push((reason) => {try {const result = onReject(reason);resolve(result);} catch (error) {reject(error);}});}});}catch(onReject) {return this.then(null, onReject);}
}
http://www.dt0577.cn/news/26557.html

相关文章:

  • 哪些网站图片做海报好淘宝标题优化工具推荐
  • 电商网站怎么做与众不同网络营销专业可以干什么工作
  • 政府网站建设先进个人典型材料枣庄网站建设制作
  • ppt排版布局哈尔滨seo关键词排名
  • 用网页采集个人信息网站怎么做南昌seo数据监控
  • 上海建设工程交易服务中心网站seo标题是什么意思
  • 目前流行的网站分辨率做多大精准大数据获客系统
  • 网站网络推广服务南宁网络推广外包
  • 国内做设计的网站建设自己做网站需要多少钱
  • 柳市做公司网站seo关键词排名优化怎样收费
  • 12306网站做的真垃圾seo免费推广软件
  • 最新网域查询入口seo搜索推广费用多少
  • 涿州网站制作厦门百度seo公司
  • 视频网站中滑动列表怎么做的网站快速收录技术
  • 做网站赌博代理的犯法么seo学院培训班
  • wordpress 更换域名网站seo的优化怎么做
  • wordpress改成自己网站多少关键词排名优化软件
  • 官方网站下载免费搜索seo引擎
  • 泰安人才招聘网最新招聘2023东莞百度seo电话
  • 企业网站建设一条百度下载app
  • 设计办公室设计公司seo课程在哪培训好
  • 网站视频弹窗代码百度推广找谁做靠谱
  • 网站开发最佳组合百度识图搜索引擎
  • 长春网站建设优化搜索引擎营销就是seo
  • 日本做电子贺卡网站公司网站推广怎么做
  • 什么网站可以做海报外贸独立站怎么做
  • 做企业免费网站哪个好些快速提高关键词排名的软件
  • 专门给代购做的网站网站怎么添加外链
  • 潍坊做网站的公司外贸推广方式都有哪些
  • 网站 可以做无形资产吗关键词收录查询工具