目录

事件循环

执行步骤

概念讲解

主线程

微任务(micro task)

宏任务(macro task)

Event Loop经典例题

这段代码的执行结果是什么?

正确答案:

具体流程:


事件循环

线程从”任务队列“中读取执行事件,这个过程循环不断的,这个机制被称为事件循环

(JS的运行机制就是事件循环!)

执行步骤

线程任务——>微任务——>宏任务 如果宏任务里还有微任就继续执行任务里的微任务,如果宏任务中的微任务中还有宏任务就在依次进行

同步的任务没有优先级之分,异步执行优先级,先执行微任务(microtask队列),再执行宏任务(macro task队列),同级别按顺序(先微任务后宏任务)

概念讲解

线程

所有的同步任务都是在主线程执行的,异步任务可能会在macrotask或者microtask里面

微任务(micro task)

宏任务(macro task)

Event Loop经典例题

这段代码执行结果什么

console.log('1')

setTimeout(function callback(){
	console.log('2')
}, 1000)

new Promise((resolve, reject) => {
    console.log('3')
    resolve()
})
.then(res => {
    console.log('4');
})

console.log('5')

正确答案

        1,3,5,2,4

具体流程

参考文章

 一看就懂的事件循环机制(event loop) – 掘金 (juejin.cn)

到底什么是Event Loop?那就来了解一下JavaScript分别在浏览器和Node环境下的运行机制吧-CSDN博客

原文地址:https://blog.csdn.net/qq_62799214/article/details/134745119

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_23330.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注