js事件循环机制=>微任务与宏任务

    xiaoxiao2022-07-07  201

    // 宏任务 (第一次代码执行的环境 script标签 setTimeout ui渲染) 微任务:promise process.nextTick // 单线程(主线程) 工作线程 webworker 辅助线程 //js执行机制 =》事件循环机制 //js异步分为两部分,一是宏任务(setTimeout,script, ui渲染),二是微任务(promise,process.nextTick) //默认再浏览器中,js会先执行当前栈中的代码:同步代码,同步代码执行完毕后会清空第一个微任务,执行的过程中会注册一些微任务,在执行下一个宏任务之前清空一次微任务 //再去执行下一个宏任务 console.log("01") setTimeout(()=>{ Promise.resolve().then(()=>{ console.log('settimeout - then1'); setTimeout(()=>{ console.log('last timeout') }) }) console.log(1); }) setTimeout(() => { console.log(2); }); setTimeout(() => { console.log(3); }); Promise.resolve().then(()=>{ console.log('then'); setTimeout(function () { console.log("哈哈哈") }) }) Promise.resolve().then(()=>{ console.log('then'); }) Promise.resolve().then(()=>{ console.log('then'); }); console.log("02")

    执行结果: 

     

    最新回复(0)