承诺会在没有等待的情况下提前退出执行吗?
这是如何await使用的:
关键字 await 使 JavaScript 等待,直到该承诺解决并返回其结果。
如果应用程序不想await直到 apromise解决并返回(例如更新非关键后端数据库),是否可以调用promisewithout await?在承诺完全完成之前,可能会在promise没有await退出的情况下过早调用吗?
回答
承诺只是一种封装在未来获得一些价值的想法的方式。
你不会“调用”一个承诺。
您可以直接使用承诺
const somePromise = someFunctionThatReturnsAPromise()
somePromise.then(functionToCallWhenValueIsAvailable);
function functionToCallWhenValueIsAvailable(value) {
console.log(value);
}
或者你可以通过 await 使用它
const value = await someFunctionThatReturnsAPromise();
console.log(value);
await 只是让代码更简单,但它在做同样的事情