es6 promise

发布于 2022年 05月 19日 01:31

就是 有两个参数 resolve reject
如果执行成功 调用 resolve 失败 reject
执行完毕
在then 里面,第一个函数 返回成功的结果,第二个是返回失败的结果;


Promise.all
Promise.all([]).then(res => {}).catch(err => {})
1
该方法接收一个Promise数组返回一个Promise,只有当该数组中的所有Promise完成后才会由pendding状态变为resolve执行then里面的回调函数,若数组中有任意一个promise被拒绝则会执行失败回调,catch方法会捕获到首个被执行的 reject函数。该方法获得的成功结果的数组里面的数据顺序和接收到的promise数组顺序是一致的。

Promise.any
Promise.any([]).then(res => {}).catch(err => {});
1
当传入的promise数组中有任意一个完成时就会终止,会忽略到所有被拒绝掉的promise,直到第一个promise完成。若传入所有的promise被拒绝则会执行拒绝回调。

Promise.race
Promise.race([]).then(res => {}).catch(err => {});
1
当promise数组中任意一个promise被拒绝或者成功,则会采用第一个promise作为他的返回值。若为成功的执行then,若失败则执行catch。

Promise.allSettled

Promise.allSettled([]).then(results => {}).catch(err => {});

当给定的promise数组中的所有promise被拒绝后会返回一个拒绝的promise数组,与[]一一对应。

 

工作中如果有您解决不了的问题或者您花费2小时还没解决的问题,这里可以有偿帮您高效直接解决bug,wx号:18062748486,备注”bug解决“;

推荐文章