如有以下代码:假如页面上有一个DOM元素box
setTimeout(() => {
console.log('a')
})
//执行1000Ms同步任务
box.style.backgroundColor = 'red'
console.log(2)
想知道一下,这种是浏览器先渲染box
的颜色还是先打印2。为什么?
如有以下代码:假如页面上有一个DOM元素box
setTimeout(() => {
console.log('a')
})
//执行1000Ms同步任务
box.style.backgroundColor = 'red'
console.log(2)
想知道一下,这种是浏览器先渲染box
的颜色还是先打印2。为什么?
13 回答12.8k 阅读
7 回答1.9k 阅读
3 回答1.1k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
6 回答880 阅读✓ 已解决
6 回答1k 阅读
2 回答1.3k 阅读✓ 已解决
修改背景色,
输出 2,
输出 a
附
微任务在前,宏任务在后
宏任务: script, setTimeout, setInterval, setImmediate, I/O,
UI rendering
;微任务: process.nextTick, Promise, Object.observe, MutationObserver;