Promise如果一直没有resolve,await会一直等待吗?

代码如下,这种情况,是不是程序一直都在等待。

function foo(x) {
    return new Promise((resolve) => {
        if (x > 1) {
            resolve(11)
        }
    })
}

async function test() {
    let a = await foo(0)
    alert(a)
}

test()
阅读 8k
2 个回答

会。所以会内存泄露。所以一定要保证 Promise 被 resolve 或 reject 了。

可以这样等效理解。 没有resolve,也没有reject ,其实就相当于一直处于pending状态。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题