关于Promise.all
Promise.all() 方法接收单个可迭代对象(如数组)作为参数,并返回一个promise。每个Promise都用一个数值进行了决议,对Promise.all() 的调用创建了新的 Promise p4。这些值的存储顺序保持了待决议(resolve)的Promise顺序,与完成的先后顺序无关,因此可以将结果匹配到每个Promise。如果任意Promise被拒绝,则p4会立即拒绝,不必等其他 Promise结束。
/* eslint-disable prefer-promise-reject-errors,eol-last */ let p1 = new Promise((resolve, reject) => resolve(42)) let p2 = new Promise((resolve, reject) => reject(43)) let p3 = new Promise((resolve, reject) => resolve(44))let p4 = Promise.all([p1, p2, p3]) let p5 = Promise.all([p1, p3]) p1.then(v=>console.log('p1 then: ' + v)) // p1 then: 42 p4.then(v=>console.log('p4 then: ' + v)) // 不执行 p4.catch(v=>console.log('catch: ' + v)) // catch: 43 p2被拒绝,p4的拒绝处理函数立即调用,不会等p1和p3结束执行。但p1和p2仍然会执行。 p5.then(v=>{console.log(Array.isArray(v)) // trueconsole.log(v) // [ 42, 44 ] })
转载于:https://www.cnblogs.com/dodocie/p/9055240.html
关于Promise.all相关推荐
- setTimeout、setInterval、promise、async/await的顺序详解(多种情况,非常详细~)
本文很长,列举的情况很多. 在阅读本文之前,如果您有充足的时间,请新建一个项目与本文一同实践. 每段代码都有对应的解释,但是自己动手尝试印象才会更深哦~ setInterval:表示多久执行一次,需要 ...
- C++多线程:异步操作std::async和std::promise
文章目录 std::async 简介 使用案例 std::promise 简介 成员函数 总结 之前的文章中提到了C++多线程中的异步操作机制 C++ 多线程:future 异步访问类(线程之间安全便 ...
- ES6中的Promise详解
Promise 在 JavaScript 中很早就有各种的开源实现,ES6 将其纳入了官方标准,提供了原生 api 支持,使用更加便捷. 定义 Promise 是一个对象,它用来标识 JavaScri ...
- 关于ES6中Promise的应用-顺序合并Promise,并将返回结果以数组的形式输出
1.Promise 基础知识梳理 创建一个Promise实例 const promise = new Promise(function(resolve, reject) {if (success){r ...
- promise实现多个请求并行串行执行
早上查资料,偶然发现这个话题,发现自己并不会,于是乎,下来研究了一下. 想想之前我们用jquery写请求的时候,要实现请求的串行执行,我们可能是这么做的. $.ajax({url: '',data: ...
- 异步编程之Promise(2):探究原理
异步编程系列教程: (翻译)异步编程之Promise(1)--初见魅力 异步编程之Promise(2):探究原理 异步编程之Promise(3):拓展进阶 异步编程之Generator(1)--领略魅 ...
- 自己动手写cpu pdf_自己动手写 Promise
这段时间在学习Promise,但始终不得要领.为了更好地理解Promise,我决定自己实现一个简易版的Promise,以学习Promise工作原理.该工程名为ToyPromise,仓库地址如下: ht ...
- promise 和 async await区别
什么是Async/Await? async/await是写异步代码的新方式,以前的方法有回调函数和Promise. async/await是基于Promise实现的,它不能用于普通的回调函数. as ...
- Promise - js异步控制神器
微信小程序开发交流qq群 581478349 承接微信小程序开发.扫码加微信. 正文: 首先给来一个简单的demo看看Promise是怎么使用的: <!DOCTYPE html> ...
- Promise的实例用法
设定函数 function chiFan() {return new Promise(function(resolve, reject) {console.log("chiFan" ...
最新文章
- 暑期集训2:ACM基础算法 例1:POJ-1064
- 微服务如何设计一个配置中心
- Django创建项目后,项目文件夹下的组成部分
- springboot配置index
- Apache Camel 2.19发布–新增功能
- Java 8 Lambda表达式的函数式编程– Monads
- equalsignorecase用法
- js中eval 详解
- python装饰器@深度加工(三分钟读懂)
- GNUstep 运行gui程序
- Go Tools安装
- win10系统显示打印机未连接到服务器,win10系统连接打印机提示“打印处理器不存在”如何解决...
- 计算机网络管理员路由与交换深圳积多少分,2020年深圳积分入户,哪些加分的证书总结?...
- 电大2019秋c语言程序设计,中央电大秋C语言程序设计A试题
- 阿里云云计算高级工程师ACP认证(Alibaba Cloud Certified Professional - Cloud Computing)考试大纲
- 机器学习之变分推断(三)基于平均场假设变分推断与广义EM
- 一文带你秒懂数据结构与算法的三大要素、五大特征!
- threejs fire 火焰与烟雾效果
- dapr的consistent hash
- 大数据概况以及Hadoop生态系统
热门文章
- Java web对试卷进行单选多选答题进行打分_2020年大学慕课Java程序设计作业答案...
- java面试题十七 switch使用范围
- 数据分析师的自我修养丨如何进阶为数据科学家
- 实训课俄罗斯方块之二授课计划总体规划
- python oop 继承_oop-在Python中继承方法的文档字符串
- 《剑指offer》栈的压入、弹出序列
- python数字图像处理-图像噪声与去噪算法
- Spring Boot引用本地jar包
- Maven plugins和pluginManagement的区别概述
- 推荐系统中使用ctr排序的f(x)的设计-传统模型篇