gpt4 book ai didi

javascript - 将经典 promise 与异步相结合

转载 作者:行者123 更新时间:2023-11-30 20:45:21 30 4
gpt4 key购买 nike

这段代码是否正确?我可以结合这样的 promise 吗?

var data = {}
await getInfo(data.com)
.then(result => {data = result})
.catch(error => {})
doStuffOnlyAfterGetInfo(data)

最佳答案

是的,你可以这样做,你可以这样想await:

await x 其中 x 是 Promise 或任何值。在您的情况下,链式调用会返回一个 promise 。

所有这些都有效:

async function fn() {
try {
var a = await 20; // a = 20
var b = Promise.resolve(20); // b = 20
var c = Promise.reject(20); // This throws exception
var d = Promise.reject(20).catch(() => 30) // d = 30
var e = fetch(url) // same as fetch(url).then(e => /*...*/)
var f = fetch(url).then(res => res.json())
catch (e) {
console.log(e) // 20
}
}

另外不要忘记,您只能在 async 函数中使用 await

Seed the Docs

关于javascript - 将经典 promise 与异步相结合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48767872/

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