gpt4 book ai didi

javascript - promise 初始化后等待使用

转载 作者:行者123 更新时间:2023-12-04 00:49:23 24 4
gpt4 key购买 nike

我想连接 mongoDb 并异步执行代码。

async function test() {
let task = asyncTask() //return a promise
//function still running
await task
//code executed only if task is resolved
}

这样使用 await 是正确的吗?

最佳答案

是的,如果您将 await 与异步函数一起使用,那么代码将阻塞,直到 promise 已解决或失败。您应该将 await block 包装在 try catch 中以处理任何错误。

async function test() {
let task = asyncTask()
//function still running
try {
await task
//code executed only if task is resolved
} catch (err){
//Something went wrong
throw new Error(err);
}
}

使用 async/await 具有与 promise 相同的功能,但只是提供了一种更同步的代码编写方式。

如果你想重写代码作为一个 promise ,那么它看起来像:

function test() {
myPromise('some arguments')
.then(result => console.log(`Task completed: ${result}`);)
.catch(err => console.error(err));
}

关于javascript - promise 初始化后等待使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52334992/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com