promise的常用方法
时间: 2023-10-28 07:43:42 浏览: 35
1. then():当一个 Promise 对象变成 resolved 状态时,会调用 then() 方法中的回调函数。
2. catch():当一个 Promise 对象变成 rejected 状态时,会调用 catch() 方法中的回调函数。
3. finally():无论 Promise 对象的状态是 resolved 还是 rejected,都会执行 finally() 方法中的回调函数。
4. all():等待多个 Promise 对象的状态全部变成 resolved 后,才会执行 all() 方法中的回调函数。
5. race():当多个 Promise 对象中有一个变成 resolved 或 rejected 状态时,就会执行 race() 方法中的回调函数。
6. resolve():将一个值或者一个 Promise 对象转换成 resolved 状态。
7. reject():将一个值或者一个 Promise 对象转换成 rejected 状态。
相关问题
Es6 promise常用方法
ES6中的Promise是处理异步操作的一种方式,它提供了一些常用的方法来处理异步操作的状态和结果。以下是一些常见的Promise方法:
1. Promise.resolve(value):创建一个已解决(fulfilled)状态的Promise对象,并将指定的值作为解决值。
2. Promise.reject(reason):创建一个已拒绝(rejected)状态的Promise对象,并将指定的原因作为拒绝值。
3. Promise.all(iterable):返回一个新的Promise对象,该对象在所有给定的promise都已解决时才解决,并将一个包含所有解决值的数组作为结果。
4. Promise.race(iterable):返回一个新的Promise对象,该对象在给定的promise中有任何一个解决或拒绝时解决,并将该解决或拒绝值作为结果。
5. Promise.allSettled(iterable):返回一个新的Promise对象,该对象在所有给定的promise都已解决或拒绝时才解决,并将一个包含所有解决或拒绝结果的数组作为结果。
6. Promise.prototype.then(onFulfilled, onRejected):添加一个执行处理程序(callback)到Promise的解决或拒绝状态。返回一个新的Promise对象,可以在后续使用链式调用。
7. Promise.prototype.catch(onRejected):添加一个拒绝处理程序(callback)到Promise的拒绝状态。返回一个新的Promise对象,可以在后续使用链式调用。
8. Promise.prototype.finally(onFinally):添加一个处理程序(callback),在Promise无论是解决还是拒绝状态时都会执行。返回一个新的Promise对象,可以在后续使用链式调用。
这些方法是Promise对象的一些常见操作,可以根据实际需求选择使用。
promise 常用静态方法
Promise 对象有以下几个常用的静态方法:
1. Promise.resolve(value): 返回一个已解决(fulfilled)的 Promise 对象,其值为指定的 value。如果 value 是一个 Promise 对象,则直接返回该对象;如果 value 是 thenable 对象(即具有 then 方法),则会将其转换为 Promise 对象并解决;否则,返回一个以 value 为值解决的 Promise 对象。
2. Promise.reject(reason): 返回一个已拒绝(rejected)的 Promise 对象,其原因为指定的 reason。
3. Promise.all(iterable): 返回一个 Promise 对象,该对象在 iterable 中所有的 Promise 都已解决时才会解决,并且按照 iterable 中的顺序返回解决值组成的数组。如果 iterable 中有任何一个 Promise 被拒绝,则返回的 Promise 对象会立即被拒绝,并且原因是第一个被拒绝的 Promise 的原因。
4. Promise.race(iterable): 返回一个 Promise 对象,该对象在 iterable 中的任何一个 Promise 被解决或拒绝时立即解决或拒绝,并将第一个解决或拒绝的 Promise 的值或原因作为结果。
5. Promise.allSettled(iterable): 返回一个在 iterable 中所有 Promise 都已解决或拒绝后解决的 Promise 对象,该对象包含一个数组,数组中的每个元素都是一个对象,对象表示对应的 Promise 的结果。
这些静态方法能够方便地创建和处理 Promise 对象,实现异步操作的控制流程。