Jaký je rozdíl mezi Promise.any a Promise.race?
Frontend
* Funkce přijímá pole slib (předpokládáme, že není prázdné) a vrací slib. * Pokud se některé z předaných slibů vyřeší (úspěšně dokončí), pak se vrácený slib vyřeší touto hodnotou. * Pokud se několik slibů úspěšně dokončí, pak se vrácený slib * vyřeší * s prvním úspěšným hodnotou, bez ohledu na pořadí slibů v poli. * Pokud jsou všechny předané sliby zamítnuty, pak je vrácený slib zamítnut s chybou typu AggregateError, která seskupí všechny chyby, s ohledem na pořadí slibů. * AggregateError lze vytvořit takto: new AggregateError(errors, 'No Promise in any was resolved') function any(promises) { // váš kód zde }
Co se stane, když bude jedna z promises odmítnuta ve funkci sumPromises?
Co se stane, pokud do funkce sumPromises nepředáte žádnou proměnnou?
Jaký je rozdíl mezi Promise.all a Promise.allSettled?
Co se stane, když předáte prázdný seznam funkcí do compose?
Proč nelze chyby ve funkci any přidávat přes push, ale je třeba je zapisovat podle indexu?
Implementujte funkci sumPromises, která přijímá promise jako argumenty a vrací součet jejich výsledků. Funkce může přijmout libovolný počet argumentů. Lze použít jakékoli API promise.
Implementujte funkci compose, která přijímá proměnlivé množství funkcí a vrací novou funkci. Výsledek každé funkce je předáván následující.
Proč může být metoda apply v implementaci runOnce potřeba?
Implementujte funkci isMonotonic, která přijímá pole čísel a určuje, zda je monotonní (stoupající nebo klesající). Vrací true, pokud je pole monotonní, jinak false. Implementujte s lineární složitostí O(n).
Implementujte obalovou funkci runOnce, která přijímá funkci a vrací novou funkci. Nová funkce může být volána pouze jednou, všechny následující volání vrací undefined. Obalovaná funkce může přijímat argumenty a vracet výsledek.
Znáš vzorec pipe? Čím se liší od compose?
Která varianta bude rychlejší: Promise.all nebo smyčka s await na každém kroku? Proč?
Na co je potřeba čítač rejectedCount? Proč se jednoduše nedíváme na délku pole errors?