推荐答案
// 使用 Promise.resolve 创建一个立即 resolved 的 Promise const resolvedPromise = Promise.resolve('Resolved value'); // 处理 resolved 的 Promise resolvedPromise.then((value) => { console.log(value); // 输出: Resolved value });
本题详细解读
什么是 Promise.resolve
?
Promise.resolve
是 JavaScript 中 Promise
对象的一个静态方法,用于创建一个立即 resolved(已完成)的 Promise 对象。它可以接受一个参数,这个参数将作为 Promise 的 resolved 值。
使用场景
- 快速创建一个 resolved 的 Promise:当你需要一个已经 resolved 的 Promise 时,可以使用
Promise.resolve
来快速创建。 - 将非 Promise 值转换为 Promise:如果你有一个值,但不确定它是否是一个 Promise,可以使用
Promise.resolve
来确保它被包装成一个 Promise。
示例代码解析
const resolvedPromise = Promise.resolve('Resolved value');
Promise.resolve('Resolved value')
创建了一个立即 resolved 的 Promise,其 resolved 值为'Resolved value'
。
resolvedPromise.then((value) => { console.log(value); // 输出: Resolved value });
- 使用
.then()
方法来处理 resolved 的 Promise。当 Promise 被 resolved 时,.then()
中的回调函数会被调用,并且传入 resolved 的值'Resolved value'
。
其他用法
Promise.resolve
还可以用于将 thenable 对象(即具有 .then
方法的对象)转换为 Promise:
-- -------------------- ---- ------- ----- -------- - - ----- ----------------- ------- - ----------------- ---- ----------- - -- ----- ------------------- - -------------------------- -------------------------------- -- - ------------------- -- --- -------- ---- -------- ---
在这个例子中,Promise.resolve
会将 thenable
对象转换为一个 Promise,并调用其 .then
方法。