javascript 中promise对象中的all,allSettled,any,race方法

简介: javascript 中promise对象中的all,allSettled,any,race方法
  • Promise.all()方法用于将多个 Promise 实例,包装成一个新的 Promise 实例。Promise.all方法接收一个数组作为cans参数,数组中的元素都是promise对象,只有数组元素的状态都变成fulfilled,Promise.all()返回对象的状态才会变成fulfilled,此时数组元素的返回值组成一个数组,传递给p的回调函数。只要数组元素之中有一个被rejected,Promise.all()返回对象的状态就变成rejected,此时第一个数组元素被reject的实例的返回值,会传递给p的回调函数。*

  • Promise.race()方法同样是将多个 Promise 实例,包装成一个新的 Promise 实例。只要数组元素之中有一个实例率先改变状态,Promise.race()方法返回对象的状态就跟着改变。那个率先改变的 Promise 实例的返回值,就传递给p的回调函数。*
  • Promise.race()方法的参数与Promise.all()方法一样,如果不是 Promise 实例,就会先调用下面讲到的Promise.resolve()方法,将参数转为 Promise 实例,再进一步处理。*

  • Promise.allSettled()方法接受一个数组作为参数,数组的每个成员都是一个 Promise 对象,并返回一个新的 Promise 对象。只有等到参数数组的所有 Promise 对象都发生状态变更(不管是fulfilled还是rejected),返回的 Promise 对象才会发生状态变更。*

  • Promise.any()方法。该方法接受一组 Promise 实例作为参数,包装成一个新的 Promise 实例返回。只要参数实例有一个变成fulfilled状态,包装实例就会变成fulfilled状态;如果所有参数实例都变成rejected状态,包装实例就会变成rejected状态。*
  • Promise.any()跟Promise.race()方法很像,只有一点不同,就是Promise.any()不会因为某个 Promise 变成rejected状态而结束,必须等到所有参数 Promise 变成rejected状态才会结束。*
  • ECMAScript 6 入门
目录
相关文章
|
7月前
|
监控 负载均衡 JavaScript
有哪些有效的方法可以优化Node.js应用的性能?
有哪些有效的方法可以优化Node.js应用的性能?
376 69
|
7月前
|
前端开发
在什么场景下适合使用 Promise.race() 方法?
在什么场景下适合使用 Promise.race() 方法?
382 68
|
4月前
|
前端开发 JavaScript API
JavaScript异步编程:从Promise到async/await
JavaScript异步编程:从Promise到async/await
503 204
|
7月前
|
前端开发
如何使用 Promise 的 all 方法?
如何使用 Promise 的 all 方法?
628 63
|
7月前
|
前端开发
如何使用 Promise 的 race 方法?
如何使用 Promise 的 race 方法?
402 62
|
2月前
|
前端开发 JavaScript API
js实现promise常用场景使用示例
本文介绍JavaScript中Promise的6种常用场景:异步请求、定时器封装、并行执行、竞速操作、任务队列及与async/await结合使用,通过实用示例展示如何优雅处理异步逻辑,避免回调地狱,提升代码可读性与维护性。
239 10
|
6月前
|
JavaScript Linux 内存技术
Debian 11系统下Node.js版本更新方法详解
本指南详细介绍在Linux系统中安装和管理Node.js的步骤。首先检查现有环境,包括查看当前版本和清除旧版本;接着通过NodeSource仓库安装最新版Node.js并验证安装结果。推荐使用nvm(Node Version Manager)进行多版本管理,便于切换和设置默认版本。同时,提供常见问题解决方法,如权限错误处理和全局模块迁移方案,以及版本回滚操作,确保用户能够灵活应对不同需求。
539 0
|
6月前
|
JavaScript Linux 内存技术
Debian 11系统下Node.js版本更新方法
Debian 11更新Node.js主要就是这三种方式,无论你是初涉其中的新手还是找寻挑战的专家,总有一种方式能满足你的需求。现在,你已经是这个
648 80
|
8月前
|
JavaScript 前端开发 Java
js 垃圾回收机制的方法
JS回收机制方法讲解