gpt4 book ai didi

javascript - 如何访问异步等待返回对象中的属性

转载 作者:行者123 更新时间:2023-11-30 07:49:10 24 4
gpt4 key购买 nike

为什么我无法在异步等待返回对象中使用 . 访问对象属性?我知道我可以访问如下属性。

let val1 = await call(3);
let val2 = await call(4);

但我很想知道这是否可以做到

let v = await call(3).val + await call(4).val;

const call = (x) => {

return new Promise((resolve, reject) => {

setTimeout(() => {
resolve({
val: x
});
}, 3000)
})
}

const dummy = async () => {

//let val1 = await call(3);
//let val2 = await call(4);
//alert(value.val + val2.val);
let v = await call(3).val + await call(4).val;
alert(v);
}

dummy()

最佳答案

您正在尝试等待 promise 的val 属性 的值。

您需要等待 promise,然后从结果中读取 val 属性:(await call(3)).val

const call = (x) => {
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve({
val: x
});
}, 3000)
})
}

const dummy = async () => {
let v = (await call(3)).val + (await call(4)).val;
alert(v);
}

dummy()

关于javascript - 如何访问异步等待返回对象中的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57112239/

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