try-async关于执行顺序的面试题
面试题
try {
(async function() { a().b().c() })()
} catch (e) {
console.log(`执行出错:${e.message}`)
}
该题主要考查点是try的同步处理和async的异步。
但是出现了一个疑问,在第一步语法检查的时候,检查出了a is not defined,为什么还会继续执行Promise中的内容。
new Promise本身是同步代码,执行到的时候并不会直接阻塞,作为整体的new Promise仍会被加入Event Queue中。
答案:


浙公网安备 33010602011771号