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
相容。