Promise 提供了多种实例方法和静态方法来处理异步操作。
以下是 Promise 的实例方法和静态方法:
# 实例方法:
then(onFulfilled, onRejected)
- 注册异步操作成功或失败时的回调函数。catch(onRejected)
- 注册异步操作失败时的回调函数。finally(onFinally)
- 注册无论异步操作成功或失败都会执行的回调函数。
# 静态方法:
Promise.resolve(value)
- 创建一个已解决的 Promise 对象,将传入的值传递给成功回调。Promise.reject(reason)
- 创建一个已拒绝的 Promise 对象,将传入的错误原因传递给失败回调。Promise.all(iterable)
- 接受一个 Promise 对象的数组,当所有 Promise 都成功时,返回一个成功的 Promise,其结果是一个包含所有 Promise 结果的数组。Promise.race(iterable)
- 接受一个 Promise 对象的数组,当任何一个 Promise 成功或失败时,返回一个对应的 Promise 结果。Promise.allSettled(iterable)
- 接受一个 Promise 对象的数组,当所有 Promise 都至少完成一次(无论成功或失败)时,返回一个已解决的 Promise,其结果是一个包含所有 Promise 结果状态的数组。Promise.any(iterable)
- 接受一个 Promise 对象的数组,当任何一个 Promise 成功时,返回一个成功的 Promise,其结果是第一个成功的 Promise 的结果。
以上是 Promise 的主要方法和静态方法,它们提供了处理异步操作的不同方式,包括组合多个 Promise、处理成功和失败的情况等