博主:DongJiang
码龄:7年
等级:LV.22级
文章:631
访问:5233623
博客简介:记录与分享
博客创建时间:2018-04-12
博客主页 立即前往

什么是promise,如何去理解和正确使用?

来源: 2024-05-15 23:22:05

promise是一个构造函数,是用来处理异步操作的解决方式。

promise构造函数是同步执行的,then方法是异步执行的。

1)是构造函数

2)用来处理异步操作

3)有两个回调方法resovlg()、reject(),分别是成功和失败,如果这两个方法没有调用时,then方法是不执行的。

示例:

new Promise(resolve=>{
console.log(1);
resolve(3);
}).then(res => {
console.log(res);
});
console.log(2);
// 输出结果 1, 2, 3

Promise.all()

Promise.all()方法用于将多个 Promise 实例,包装成一个新的 Promise 实例。

const p = Promise.all([p1, p2, p3]);

(1)只有p1、p2、p3的状态都变成fulfilled,p的状态才会变成fulfilled,此时p1、p2、p3的返回值组成一个数组,传递给p的回调函数。

(2)只要p1、p2、p3之中有一个被rejected,p的状态就变成rejected,此时第一个被reject的实例的返回值,会传递给p的回调函数。

finally() 方法用于指定不管 Promise 对象最后状态如何,都会执行的操作。该方法

不管promise最后的状态,在执行完then或catch指定的回调函数以后,都会执行finally方法指定的回调函数。

原文出处:
版权声明:本文来源地址若非本站均为转载,若侵害到您的权利,请及时联系我们,我们会在第一时间进行处理。