Middle
Mi a különbség a Promise.all és a Promise.any között?
sobes.tech MI
Válasz az MI-től
A Promise.all arra vár, hogy minden ígéret teljesüljön egy iterálható objektumban. Ha minden ígéret sikeresen teljesül, akkor egy ígéretet ad vissza, amely ugyanabban a sorrendben oldódik meg, mint a bemeneti ígéretek. Ha legalább egy ígéret elutasításra kerül, akkor egy elutasított ígéretet ad vissza az első elutasított ígéret hibájával.
A Promise.any arra vár, hogy bármelyik ígéret teljesüljön egy iterálható objektumban. Amint bármelyik ígéret sikeresen teljesül, egy olyan ígéretet ad vissza, amely az adott ígéret értékével oldódik meg. Ha minden ígéret elutasításra kerül, akkor egy AggregateError-ral elutasított ígéretet ad vissza, amely tartalmazza az összes elutasított ígéret hibáit.
Összehasonlítás:
| Kritérium | Promise.all | Promise.any |
|---|---|---|
| Siker feltétele | Minden ígéret sikeresen teljesül | Bármely ígéret sikeresen teljesül |
| Hiba feltétele | Bármely ígéret elutasításra kerül | Minden ígéret elutasításra kerül |
| Siker eredmény | Eredmények tömbje (ugyanabban a sorrendben, mint a bemeneti ígéretek) | Az első sikeresen teljesült ígéret értéke |
| Hiba eredmény | Az első elutasított ígéret hibája | AggregateError az összes elutasított ígéret hibáival |
| Használat | Függőség minden aszinkron művelettől | Függőség bármelyik aszinkron művelettől |