Javascript 事件队列和微任务队列之间是否存在任何关系?

Javascript 事件队列和微任务队列之间是否存在任何关系?,javascript,Javascript,我的理解 据我所述,对于异步操作,一旦“加载”,其返回值就会进入事件队列 还有人向我描述过,Promises&。然后s是异步操作,它们的返回值叠加在微任务PromiseJobs队列上 如果我们将“队列前端”定义为第一个异步操作“已加载”的结果的目标 我知道在将事件队列或微任务队列的前端加载到调用堆栈/宏任务队列之前,该队列必须为空 我的问题 事件队列和微任务队列之间是否存在任何关系 无关代码段 const f=()=>{ console.log('1') 新承诺((解决、拒绝)=> 决议(

我的理解

据我所述,对于异步操作,一旦“加载”,其返回值就会进入事件队列

还有人向我描述过,
Promise
s&
。然后
s是异步操作,它们的返回值叠加在微任务PromiseJobs队列上

如果我们将“队列前端”定义为第一个异步操作“已加载”的结果的目标

我知道在将事件队列或微任务队列的前端加载到调用堆栈/宏任务队列之前,该队列必须为空


我的问题

事件队列和微任务队列之间是否存在任何关系


无关代码段

const f=()=>{
console.log('1')
新承诺((解决、拒绝)=>
决议(2)
).then(resolve=>console.log(resolve))
}
f()
计数器=0;
对于(让索引=0;索引<100000000;索引++){
计数器=索引;
}

控制台日志(3)随着承诺的引入,ES6中引入了
微任务
队列或
作业
队列

没有任何这样的关系,但有一个区别,事件 队列将任务放在队列的后面,排在所有其他任务的后面 任务,而微任务队列将其放在前面并执行任务 就在执行调用堆栈中的当前函数之后

总体而言,
微任务
队列>
事件
队列的优先级(对节点js和前端Javascript都有效)


更多解释

你从哪里读到了没有解释差异的微任务和宏任务?@Bergi我使用的是:“在每个宏任务之后,引擎立即执行微任务队列中的所有任务,然后再运行任何其他宏任务或渲染或其他任何操作。”这一点非常清楚,不是吗?谢谢@Shubh这是一篇好文章。希望能找到更多这样的。现在我可以确认事件队列和微任务队列是两个独立的东西吗?在事件队列或类似的东西中找不到微任务队列?是的,这是为不同任务设计的两个不同队列:)