Promise.all
Promise.all(
Iterable<any> | Promise<Iterable<any>> input
) -> Promise
当你希望等待多个承诺完成时,此方法很有用。
给定 Iterable
(数组是 Iterable
),或者 Iterable
的承诺,它产生 promises(或者 promises 和 values 的混合),将 Iterable
中的所有值迭代到一个数组中,并返回一个在所有时都满足的 promise。数组中的项目已完成。promise 的履行值是一个数组,其在原始数组的各个位置具有履行值。如果数组中的任何 promise 都拒绝,则返回的 promise 将被拒绝并拒绝原因。
var files = [];
for (var i = 0; i < 100; ++i) {
files.push(fs.writeFileAsync("file-" + i + ".txt", "", "utf-8"));
}
Promise.all(files).then(function() {
console.log("all the files were created");
});
此方法与本机承诺中的 Promise.all
兼容。