宏任务包括:setTimeout setIntervalAjaxDOM事件, 宏任务是由宿主(浏览器、Node)发起的,宏任务,可以理解为每次执行栈执行的代码就是一个宏任务(包括每次从事件队列中获取一个事件回调并放到执行栈中执行).进程的切换肯定是宏任务,因为需要花费大量的资源 二. 什么是微任务(MicroTask) 微任务包括:Promise async/await ...
执行顺序: 宏任务 > 微任务 > 宏任务 > 微任务 javascript 是单线程的, 在执行js代码的时候, 全局的js代码是个宏任务, 遇到同步的就执行,异步的就分别放入对应的任务队列中去; 等到全局的js代码的同步执行完成后,就开始找微队列里的微任务,等到微任务执行完成后,才开始执行宏队列的宏任务;...
1.宏任务:当前调用栈中执行的代码成为宏任务。(主代码快,定时器等等)。 2.微任务:当前(此次事件循环中)宏任务执行完,在下一个宏任务开始之前需要执行的任务,可以理解为回调事件。(promise.then,proness.nextTick等等)。 3.宏任务中的事件放在callback queue中,由事件触发线程维护;微任务的事件放在微任务队列中,由...
可以这样理解 只有promise是微任务(还有其他的不常用),其他的都是宏任务 有一个队列,js执行,点击事件,setTimeout都是往队列里推一条任务,这就是你说的宏任务 在每个宏任务执行完成后会调用:本轮被加入进去的微任务 然后下一个宏任务 console.log('task 1') Promise.resolve().then(() => { console.log('...
1.做事不要你以为你以为,有问题就要问,任何事情都要向上级把细节问清,把要求问清,一定得要上级肯定的回复才去行动,不要想当然自行做决定。 2.和同事对接工作时不要因为不好意思害羞就不去催,一定要去催,一定要去催,一定要去催,语气凶一点也没事,因为工作就是这样,是一环扣一环的,对方不及时就会耽误...
宏任务是由宿主(浏览器、Node)发起的,宏任务,可以理解为每次执行栈执行的代码就是一个宏任务(包括每次从事件队列中获取一个事件回调并放到执行栈中执行).进程的切换肯定是宏任务,因为需要花费大量的资源 二. 什么是微任务(MicroTask) 微任务包括:Promise async/await 等… ...
可以这样理解 只有promise是微任务(还有其他的不常用),其他的都是宏任务 有一个队列,js执行,点击事件,setTimeout都是往队列里推一条任务,这就是你说的宏任务 在每个宏任务执行完成后会调用:本轮被加入进去的微任务 然后下一个宏任务 console.log('task 1') Promise.resolve().then(() => { console.log('...
每处理一个经济舱乘客,工作人员就要瞥一眼头等舱队伍是否有人来了,如果有人,就要转到头等舱这边先处理。直到头等舱这边队伍空了,才能再回过头来处理经济舱的乘客。 至于什么 API 注册的是宏任务,什么 API 会是微任务,你可以详细去查一下。 本质就是为了区分任务的优先级。 有用1 回复 查看全部 2 个回答...