5.5. Promise.all

  1. Promise.all(promiseArray);

Promise.all代码示例

  1. var p1 = Promise.resolve(1),
  2. p2 = Promise.resolve(2),
  3. p3 = Promise.resolve(3);
  4. Promise.all([p1, p2, p3]).then(function (results) {
  5. console.log(results); // [1, 2, 3]
  6. });

生成并返回一个新的promise对象。

参数传递promise数组中所有的promise对象都变为resolve的时候,该方法才会返回, 新创建的promise则会使用这些promise的值。

如果参数中的任何一个promise为reject的话,则整个Promise.all调用会立即终止,并返回一个reject的新的promise对象。

由于参数数组中的每个元素都是由 Promise.resolve 包装(wrap)的,所以Paomise.all可以处理不同类型的promose对象。