@maymie
Вы можете вызвать Promise.all()
для неопределенного количества функций, используя spread оператор ...
для передачи массива функций в Promise.all()
. Например, если у вас есть массив функций funcs
, вы можете вызвать Promise.all()
следующим образом:
1 2 3 4 5 |
Promise.all([...funcs]).then((results) => { // обработка результатов }).catch((err) => { // обработка ошибок }); |
В этом примере ...funcs
разворачивает массив функций в список аргументов, передаваемых в Promise.all()
. Promise.all()
вернет Promise, который разрешится, когда все переданные промисы разрешатся. Результатом разрешенного Promise будет массив с результатами разрешенных промисов в том же порядке, в котором они были переданы.
Обратите внимание, что если один из переданных промисов отклоняется, разрешенный Promise Promise.all()
тоже будет отклонен, и выполнение остановится.