【问题标题】:Why doesn't the code after "await" in this JavaScript ES6 example get run?为什么这个 JavaScript ES6 示例中“等待”之后的代码没有运行?
【发布时间】:2020-06-10 17:10:05
【问题描述】:

我有以下sn-p:

let zxcv = () => new Promise((resolve, reject) => {
    setTimeout(() => {
        console.log(4)
    }, 1000)
})

async function jk(){
    await zxcv()
    console.log(6)
}

jk()

当我运行这个 sn-p 时,它会等待一秒钟,然后记录“4”,然后结束。 “6”永远不会被记录。

为什么?

【问题讨论】:

  • 承诺没有解决或拒绝。

标签: javascript ecmascript-6 async-await es6-promise


【解决方案1】:

您从未在zxcv 中解决您的承诺:

let zxcv = () => new Promise((resolve, reject) => {
    setTimeout(() => {
        console.log(4)
        resolve()
    }, 1000)
})

否则承诺将无限期挂起!

【讨论】:

    猜你喜欢
    • 2020-07-02
    • 1970-01-01
    • 2014-04-24
    • 2021-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多