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接收到的数组顺序是...