gpt4 book ai didi

javascript - 用于确定 JavaScript 对象中属性值的异步函数

转载 作者:行者123 更新时间:2023-12-01 01:51:16 24 4
gpt4 key购买 nike

我需要设置“myObject”的一个属性,其值将在 2500 毫秒后解析。所以我正在利用 Promise 功能。

  const promise = new Promise(function(resolve,reject) {
setTimeout(function(){
resolve("Success!");
}, 2500);
});

var myObject = {
status : promise.then(function(success) {
return success;
})
};

console.log(myObject.status);

当我运行这个时,我进入了 NodeJS。

Promise { <pending> }

我在互联网上找到的所有示例都显示了如何调用回调方法。它们都没有告诉我们如何从异步调用中分配属性值。我非常想自己解决这个问题。向我指出一个正确的示例将会非常有帮助。

最佳答案

您是否尝试在 promise 解决后设置状态的值?如果是这样,看不到 promise 值的状态,请在 promise 的回调中设置状态值:

var myObject = {
status: 'not set'
};

promise.then(() => {
myObject.status = 'set';
console.log(myObject.status);
});

此外,如果您在回调之外 console.log 状态值,它将显示调用 Promise 时的值,而不是 Promise 解析时的值。这就是为什么在上面的示例中我将调用放在回调中。

关于javascript - 用于确定 JavaScript 对象中属性值的异步函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51479177/

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