黑马程序员技术交流社区

标题: [上海校区] [打印本页]

作者: 依惜    时间: 2019-11-15 09:44
标题: [上海校区]

   宏任务和微任务

setTimeout(function(){

console.log('1')

});

newPromise(function(resolve){

console.log('2');

}).then(function(){

console.log('3')

});

console.log('4');

因为settimeout是宏任务,虽然先执行,但是被放到了宏任务的eventqueue里面,然后代码继续往下检查看有没有微任务,检测到Promise的then函数把他放入了微任务序列。等到主线进程的所有代码执行结束后。先从微任务queue里拿回掉函数,然后微任务queue空了后再从宏任务的queue拿函数。







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2