VueBloghyhero6

更新一道面试题

2020-12-28 / 2020-12-28 / 340次浏览
    let sleep = s => {
        let time1 = Date.now();
        while (Date.now() - time1 < s){ // 典型的同步函数阻断了异步函数的执行

        }
        console.log("A",`end sleep ${s}ms`)
    }
    let async1 = async () => {
        await async2()
        console.log("B", "async1 end")
    }
    let async2 = async () => {
        console.log('C', 'async2 start')
        await Promise.resolve()
        console.log('D', 'async2 end')
    }
    setTimeout(() => {
       console.log("1", "settimeout-0")
    },0)

    new Promise((resolve,reject)=>{
        console.log("2","promise1")
    }).catch(()=>console.log("3","promise2"))
    async1()
    sleep(10000)

写出打印的输出内容。

————————————————————————————