要访问Promise对象的值,您可以使用异步函数(async/await)或Promise的.then()方法。
以下是使用异步函数的示例代码:
async function getValueFromPromise() {
const promise = new Promise((resolve, reject) => {
// 模拟一个异步操作,比如从服务器获取数据
setTimeout(() => {
resolve('Promise resolved');
}, 2000);
});
try {
const value = await promise;
console.log(value);
} catch (error) {
console.error(error);
}
}
getValueFromPromise(); // 输出: Promise resolved
在上面的示例中,我们创建了一个Promise对象,并在2秒后解析它。然后,我们使用async函数和await关键字来等待Promise的解析。在try块中,我们将解析的值赋给变量value,并将其打印到控制台。
如果您不想使用async/await,您可以使用.then()方法:
const promise = new Promise((resolve, reject) => {
// 模拟一个异步操作,比如从服务器获取数据
setTimeout(() => {
resolve('Promise resolved');
}, 2000);
});
promise.then((value) => {
console.log(value);
}).catch((error) => {
console.error(error);
});
在上面的示例中,我们创建了一个Promise对象,并在2秒后解析它。然后,我们使用.then()方法来处理Promise的解析值。在.then()方法中,我们传递一个回调函数,该函数将在Promise解析时被调用,并将解析的值作为参数传递给它。在.catch()方法中,我们传递一个回调函数,该函数将在Promise被拒绝时被调用,并将拒绝的原因作为参数传递给它。