前端手写代码面试题
目录

实现一个 Promise.resolve

· 约 3 分钟读完 · 第 23 / 125 章

推荐答案

本题详细解读

1. 理解 Promise.resolve 的作用

Promise.resolve 是 JavaScript 中 Promise 对象的一个静态方法,用于将一个值转换为一个 Promise 对象。如果传入的值本身就是一个 Promise 对象,则直接返回该对象;如果传入的值是一个普通值,则返回一个以该值为结果的已解决的 Promise 对象。

2. 实现思路

  • 判断传入的值是否为 Promise 对象:如果传入的值已经是 Promise 对象,则直接返回该对象。
  • 返回一个新的 Promise 对象:如果传入的值不是 Promise 对象,则创建一个新的 Promise 对象,并将传入的值作为 resolve 的参数。

3. 代码实现

4. 使用示例

5. 注意事项

  • Promise.resolve 方法不会改变传入的 Promise 对象的状态,如果传入的是一个已经解决的 Promise 对象,返回的 Promise 对象也会立即解决。
  • 如果传入的是一个普通值,返回的 Promise 对象会立即解决,并将该值作为解决结果。