var p1 = new Promise((resolve, reject) => {
setTimeout(resolve, 2000, 'one');
});
var p2 = new Promise((resolve, reject) => {
setTimeout(resolve, 1000, 'two');
});
var p3 = new Promise((resolve, reject) => {
setTimeout(resolve, 4000, 'three');
});
var p4 = new Promise((resolve, reject) => {
setTimeout(resolve, 3000, 'four');
});
Promise.all([p1, p2, p3, p4]).then(values => {
for (let i = 0; i < values.length; i++) {
let v = values[i]
console.log(v)
}
}, reason => {
console.log(reason)
});
// 输出结果:
// one
// two
// three
// four
使用 Promise.all 确保异步操作的顺序
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 在ES6中可以将多个Promise.all异步请求并行操作:1、当所有结果成功返回时按照请求顺序返回成功;2、当其...
- 导读: 分别使用Promise, Generator, async三种异步操作读取文件,async无论是语义化 /...
- Promise.all Promise的all方法提供了并行执行异步操作的能力执行回调的时机:所有异步操作执行完成...
- Promise.all获得的成功结果会返回一个数组,而数组里面的数据顺序和Promise.all接收到的数组顺序是...