范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

浏览器事件环

  简书文章链接:浏览器事件环 - 简书1. 什么是浏览器事件环
  我们知道,在 javascript  中,有定时器setTimeout  、服务请求ajax  、ui渲染、还有些Promise  等,浏览器在解析这些代码时,不是同步进行的。比如setTimeout  要等到时间到时才会执行,ajax  要等到服务端响应后才会拿到返回数据。
  那么浏览器如何知道什么时候该去处理setTimeout  或者ajax  ,方法就是,一轮一轮循环,这就形成了浏览器事件环。2. 宏任务和微任务
  先明白这两个概念 宏任务: ajax  、setTimeout  、setInterval  、I/O  、事件微任务: Promise  、process.nextTick  3. 事件环模型
  直接看图
  学习浏览器事件环,理解这一个图就行了
  解释下 js所有代码先执行,遇到宏任务和微任务,就把他们交给对应的线程,各自在各自的线程里执行 ajax  、setTimeout  、Promise  等这些异步操作都有各自的线程,比如setTimeout  在自己的线程执行,时间到时,会把回调放到宏任务队列中;同理,Promise  等到then后,会把回调放到微任务队列中。第一步的js代码全部执行完成后,首先会 清空所有 的微任务。 在第三步清空所有微任务队列时,此时还可能遇到微任务或者宏任务,也一样,将遇到的微任务加入到此时微任务的末尾,在此次清空微任务队列过程中加入的也会被清空掉,宏任务加入到宏任务队列。 而后进行一次ui渲染 从宏任务队列中 取出第一个 执行(每轮循环只执行一个宏任务,微任务是全部执行) 宏任务代码执行时同样可能会再次遇到宏任务和微任务,遇到时再次将他们加入到对应的任务队列 此任务执行完毕后再次取出微任务队列执行,再次清空微任务。 渲染页面 然后再次从宏任务队列中取出一个宏任务执行,如此循环直到任务队列全被清空 记住下面两点就行
  每轮循环中,微任务全部清空,宏任务只拿出一个执行,是一个
  微任务清空后,是进行ui渲染,然后执行一个宏任务4. 事件环实战document.body.style.background = "red"; console.log(1) Promise.resolve().then(()=>{   console.log(2)   document.body.style.background = "green"; }) console.log(3);
  打印结果
  1 3 2
  另外:在页面中,是看不到红色视图的,只能看到绿色。因为先执行微任务,再进行ui渲染,微任务执行时,body的背景设置了green,覆盖red
  来个复杂例子 setTimeout(() => {   console.log(1);   Promise.resolve().then(() => {     console.log(2);   }); }, 0); new Promise((resolve) => {   console.log(3);   resolve(); }).then(() => {   console.log(4); }); Promise.resolve()   .then(() => {     console.log(5);   })   .then(() => {     console.log(6);     setTimeout(() => {       console.log(7);     }, 1000);   })   .then(() => {     console.log(8);   });
  打印结果 3 4 5 6 8 1 2 7
  原因: 遇到 setTimeout  交给setTimeout  的线程执行,定时器是0秒,线程立即把回调放到宏任务队列中遇到 new Promise  ,注意new Promise  的回调是立即执行的,先打印出3,把then  放到微任务队列中遇到 Promise.resolve  ,把5放到微任务队列中主代码执行完毕,接着清空微任务 微任务队列中,第一个放进去的是4,打印出4 第二个微任务是5,打印出5,在执行5时,又遇到微任务6,加入到尾部队列中,接着执行6的微任务,打印出6 微任务6执行时,遇到 setTimeout  ,交给setTimeout  线程处理,setTimeout  线程会在1秒后把回调放到宏任务队列中微任务6执行完,遇到微任务8,同理也会一块清空8,打印出8 此时微任务清空完毕,拿出一个宏任务执行,打印1 宏任务1执行时,遇到微任务2,加入微任务队列中 接着清空所有微任务,打印2 setTimeout  线程1秒后,把7加入宏任务队列中,最后会打印出7
  这个例子理解清楚,说明你对事件环掌握了,面试问完全没问题
  完
  如有错误,请指正,欢迎评论交流,只写干货

荣耀30pro是否还值得购买?2020年四月,荣耀发布了荣耀30,荣耀30pro和30pro。今天我们聊聊,时隔两年,荣耀30系列还是否值得购买。荣耀30系列采用5G麒麟990处理器,因为当时华为和荣耀还没有分楼市松绑,房价还会再涨吗?文杨国英楼市又迎来松绑潮。4月1日,衢州发布关于促进市区房地产业良性循环和健康发展的通知,取消限购,松绑限售政策。同一天,秦皇岛也发布解除限购政策,购买存量房(二手房)的购房人申请股价暴跌60,恒立液压不认命卓越性能AMD商用PC方案馆中关村在线本文作者张贺一家工程机械企业,凭啥进入全球未来50强?当财富将恒立液压与京东健康拼多多汇川技术等一道列入2021年未来50强榜单时,不免有人会数字人民币第三批试点城市出炉第三批试点城市落地近日央行进一步开放多个城市作为数字人民币试点,强调加大生态体系建设力度,有望加速推进数字人民币应用。4月2日,据报道,人民银行于3月31日召开数字人民币研发试点工爱上站桩八段锦打卡第四十八天一贯怕过寒食日,转眼又是清明。清晨早早起床,刷牙洗脸,莫忘了我挚爱的站桩和八段锦。在韵味悠长的音乐声中,短短的半个小时眨眼就过去,留在心底的余韵未消的欣悦和绵长幽远的思绪。吃罢早饭30岁之后对自己的馈赠春日生活打卡季人活一辈子,免不得要经历为生计奔波的苦楚,更免不得要品尝岁月更迭的悲喜。彩色的前20年,总以为幸福就是有钱赚,有人陪,有事做。袭走过人事变迁后才顿悟,原来对后半生最好建议中老年人5种高卵磷脂食材要多吃!健脑益智,越吃越年轻卵磷脂又叫蛋黄素,是与蛋白质维生素并列的第三营养素,是维持人体细胞代谢营养物质正常运转的必备条件。它不仅能够增强大脑的活力消除疲劳提高记忆力,还能改善皮肤细胞减少色素沉着防衰老。然王非社保投入越多,为何城乡收入差距反而越大?关于社保体制的一点建议编者按社会保障在二次收入分配中发挥着关键调控作用。加大社会保障力度助力共同富裕已是共识,但如果不改善现有的社保体制,社会保障可能会变成逆向保障,即投入越多,收入差距反而可能越大。以洗地机真的能解放双手吗?添可芙万2。0LCD智能洗地机测评写在前面现在人都是公司和家两点一线的快节奏生活方式,辛劳一天后回到家还要面对家务活,确实不易,科技改变生活,最近被各种洗地机种草,今天终于拔草了,选了呼声最高的添可洗地机,他家的最王者荣耀官方英雄攻略抄袭b站up主,太无耻了王者荣耀最近因为公孙离出新皮肤,所以官方更新了一个英雄攻略视频叫九个人屏住呼吸看一个人秀,结果被爆出抄袭的b站up主是秋白呀的英雄攻略视频一个视频掌握公孙离!这可能是全b站最全面的人生赢家!大萝卜一波6连胜神奇逆转夺冠,巫师前功尽弃泪洒赛场北京时间4月4日凌晨,斯诺克巡回锦标赛决赛继续开打,由巫师希金斯,对决大萝卜罗伯逊,两人此前职业生涯交手过25次,平分秋色,各为12胜12负1平。本场对决,小潼认为是新旧势力交锋,
公然反华,还希望中国民众理解!这家公司的精神分裂太让人无语作者军情瞭望室挥戈美国总统拜登当地时间23日签署一项法案,禁止从中国新疆地区进口几乎所有商品。12月22日晚间,挥戈看到明星艺人王俊凯发表声明故即日起,我们终止与英特尔品牌的一切合买一台真正好用的手机定要达标的4要素别心急,预算不够再忍忍导读买一台真正好用的手机定要达标的4要素别心急,预算不够再忍忍对于很多人来说挑选手机都是一件非常痛苦的事情,在众多手机品牌的挑选之中可能看着看着就烦了。尤其现在很多厂商的宣传的五花向深远海进发国内离岸最远海上风电项目全容量并网发电来源人民网原创稿人民网北京12月26日电(记者杜燕飞)记者从三峡集团获悉,国内离岸最远海上风电项目江苏大丰H82海上风电项目25日全容量并网发电,海上风电开发向深远海进发。江苏大丰平安员工贪腐5。32亿!这是企业腐败天花板了吧12月21日,国家审计署最新调查报告,平安信托江苏事业部中层员工陈刚贪腐5。32亿元,被判处有期徒刑15年,这个数字应该是企业界的贪腐天花板了。前几天,大家还在惊叹直播一姐薇娅要补年龄只是个数字,这些老人用穿搭告诉你,搭配得当有气质更显年轻女人的美,是一辈子的事情,与年龄无关,与长相无关,即使脸上爬上皱纹,头发已经花白,依然可以美得赏心悦目。爱美是女人的天性,而养眼又舒适的穿衣搭配方式,则是营造美感的一个必要条件。香年纪比较大的女人,该留什么样的刘海更好看?嗨,各位小仙女们,大家好呀!对于上了年纪的女人来说,换发型的时候,有哪些需要注意的问题呢?要Lily说,除了烫卷度发色之外,刘海也是一大关键!年纪比较大的女人,该留什么样的刘海更好大衣阔腿裤才是中年女人该有的穿搭!时髦好看,又不显老气什么样的穿搭才是中年女性该具备的冬日穿搭呢?答案就是大衣阔腿裤!面料厚实的大衣外套,不仅能防风御寒,还能增加造型的气质感,而阔腿裤不仅是藏匿赘肉的一把好手,还带有浓浓的高级气质。两吉诺比利有妖刀那么大的名气,为什么NBA生涯只入选两次全明星?因为吉诺比利的属性太特殊,才会在NBA生涯中只入选过两次全明星。在他十多年的职业生涯中,加上季后赛,他只打了300多场比赛。满打满算还有五个赛季,其他时候都是替补。然后吉诺比利在过明星侯祥9岁停止发育,36岁身高不到1米6,和妻子同框像母子俗话说得好,三百六十行,行行出状元。别的小孩还在学校读书的时候,有的小孩已经出现在了荧屏之中。他们精湛的演技和幽默风趣的形象,让人们印象深刻,而他们也被大家称为童星。小时候看过的电DOTA2TS队长谈论队伍状态,年轻的队伍需要磨练TI10新科冠军冠军TS在深渊清清赛上13负于苔原后,队长米波什卡谈到了这件事。他说,球队实际上对第二名很满意,并没有太大的获胜希望。最初,TS并没有为这次比赛设定目标。所有人都想彭四英透露孙海洋心境跟孙卓拍照怕被嫌弃,渴望跟儿子多合影相信大家最近也都很关心孙卓认亲的事情,目前孙卓已经回到亲生父母身边,一家人在返回深圳的路上。返程途中,为了让孙卓能放松心情,孙海洋夫妇决定带孙卓去景点游玩。昨天一家人去到了庐山,呼