0%

Promise的all方法

当遇到某种需求需要两次或多次进行网络请求时,可以考虑使用all方法(还是以setTimeout模拟网络请求)
代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Promise.all([
new Promise((resolve, reject) => {
setTimeout(() => {
resolve({
name: "WRM",
sex: "女",
});
}, 1000);
}),
new Promise((resolve, reject) => {
setTimeout(() => {
resolve("hello world");
}, 2000);
}),
]).then((data) => {
console.log(data);
});
  • promise.all中的数组有两个元素(两个网络请求),只有当两个都请求到数据时才会调用then里的函数。
  • then里的函数的参数data是一个数组类型
    输出结果如下:
    在这里插入图片描述
    在这里插入图片描述