Sobes.tech

Frontend

* Funkcia prijíma pole sľubov (predpokladáme, že nie je prázdne) a vracia sľub. * Ak sa niektoré z odovzdaných sľubov vyrieši (úspešne sa vykoná), potom sa vracajúci sľub vyrieši touto hodnotou. * Ak sa viacero sľubov úspešne dokončí, tak sa vracajúci sľub * vyrieši * s prvou úspešnou hodnotou, bez ohľadu na poradie sľubov v poli. * Ak sú všetky odovzdané sľuby zamietnuté, tak sa vracajúci sľub zamietne chybou typu AggregateError, ktorá zoskupí všetky chyby, pričom zohľadní poradie sľubov. * AggregateError možno vytvoriť takto: new AggregateError(errors, 'No Promise in any was resolved') function any(promises) { // váš kód tu }

176

Prečo sa chyby v funkcii any nemôžu pridávať cez push, ale je potrebné ich zapisovať podľa indexu?

173

Čo sa stane, ak bude jedna z promises odmietnutá vo funkcii sumPromises?

172

Čo sa stane, ak do funkcie sumPromises ne odovzdáte žiadnu sľub?

170

Aký je rozdiel medzi Promise.all a Promise.allSettled?

167

Čo sa stane, ak odovzdáte prázdny zoznam funkcií do compose?

165

Implementujte funkciu sumPromises, ktorá prijíma sľuby ako argumenty a vracia súčet ich výsledkov. Funkcia môže prijať ľubovoľný počet argumentov. Môžete použiť akékoľvek API sľubov.

153

Implementujte funkciu isMonotonic, ktorá prijíma pole čísel a určuje, či je monotonické (rastúce alebo klesajúce). Vráti true, ak je pole monotonické, inak false. Implementujte s lineárnou zložitostí O(n).

148

Prečo môže byť metóda apply v implementácii runOnce potrebná?

146

Implementujte funkciu compose, ktorá prijíma variabilný počet funkcií a vracia novú funkciu. Výsledok každej funkcie sa prenáša na ďalšiu.

143

Implementujte obalno funkciu runOnce, ktorá prijíma funkciu a vracia novú funkciu. Nová funkcia môže byť volaná iba raz, všetky ďalšie volania vracajú undefined. Obalovaná funkcia môže prijímať argumenty a vracať výsledok.

132

Ktorá možnosť bude rýchlejšia: cez Promise.all alebo cez cyklus s await na každom kroku? Prečo?

131

Na čo je potrebný čítač rejectedCount? Prečo jednoducho nepozrieme na dĺžku poľa errors?

126