有关JS事件轮询event loop的一道面试题

369 阅读1分钟

哈哈,真的就一道很常见的面试题,但是把event loop的所有知识点应该都囊括进来了,请大家先想一想输出结果是什么,然后再自己运行一遍想想原因。大牛请忽略

console.log(1)
setTimeout(function () {
	console.log(2)
}, 1000)
async function test(){
  console.log(3)
  await setTimeout(() => {
    console.log(4)
  }, 0)
  console.log(5)
}
test()
new Promise(function (resolve, reject) {
    console.log(6)
    setTimeout(function () {
        console.log(7)
    }, 500)
    resolve()
}).then(function (res) {
    console.log(8)
})
console.log(9)