美文网首页
js 的eventloop

js 的eventloop

作者: 鹏雨燕 | 来源:发表于2020-07-08 17:51 被阅读0次

    浏览器环境下,异步任务分macroTask和microTask
    宏任务macroTask:script中代码、setTimeout、setInterval、I/O、UI render
    微任务microTask:Promise.then、Object.observer、MutationObserver

    在浏览器中初始认为执行线程中没有代码,每一个<script>中的代码是一个独立的MacroTask,即会执行前面<script>中创建的microTask再执行后面<script>中的同步代码;
    如果microTask一直被添加,则会继续执行microTask,卡死macroTask;
    部分浏览器执行顺序可能与上述情况不符合,可能是不符合标准,或者是js与HTML部分标准冲突。
    promise的then和catch才是microTask,本身内部代码不是。


    image.png

    相关文章

      网友评论

          本文标题:js 的eventloop

          本文链接:https://www.haomeiwen.com/subject/mqnccktx.html