脚本宝典收集整理的这篇文章主要介绍了js运行机制 (包括宏任务微任务,同步异步,事件循环机制Event Loop)面试常问,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
都到一封私信,相信很多人对一些js运行机制,一看到都是很头疼的问题,那么博主今天彻底整理了一篇js运行机制类的问题,并且分段进行封装,哪里不会点哪里。
提示:以下是本篇文章正文内容,下面案例可供参考
首先,我们都知道js的运行顺序,js是一门单线程语言,js是单线程,js是单线程,js是单线程。一切的多线程,都是通过单线程模拟出来的。
同步就代表着,假设你现在人在国外,身上并没有现金,但是国外只支持现金,这个时候你需要先往家里打电话,家里人再接了电话,家里人再去银行,银行再向你的账户汇款,这一系列的过程都不可以省略的前提下,叫做同步。
那么现在还是上面的例子,还是人在国外,身上没钱,但是这时候呢,我通过发短信的方式联系家里人,家里人看到后自动就会给我汇款,我这时候已经完完全全没有必要一直等着家里人接电话,我发完短信后可以去做其他的事情,从而大大提高了工作效率。
这里有掘金的文章里的大佬。他叫:ssssyoki 点击这里进入他的帖子
再次感谢 ssssyoki 的两张图,真的总结的非常好。
这里牵扯到的问题是一个 宏任务微任务执行顺序的问题,你像 setTimeout 、setInterval 都是宏任务,promise .then .catch 是微任务,当这个任务执行的时候,先执行宏任务里的代码,再执行宏任务里面的微任务,只有上一个宏任务执行完毕以后,才会执行下一个宏任务。
以上是脚本宝典为你收集整理的js运行机制 (包括宏任务微任务,同步异步,事件循环机制Event Loop)面试常问全部内容,希望文章能够帮你解决js运行机制 (包括宏任务微任务,同步异步,事件循环机制Event Loop)面试常问所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。