Koja je razlika između Promise.any i Promise.race?
Frontend
* Funkcija prima niz obećanja (pretpostavljamo da nije prazan) i vraća obećanje. * Ako se neko od datih obećanja reši (uspešno izvrši), onda se vraćeno obećanje rešava tim vrednošću. * Ako više obećanja uspešno završi, onda se vraćeno obećanje * rešava * sa prvom uspešnom vrednošću, bez obzira na redosled obećanja u nizu. * Ako su sva data obećanja odbačena, onda se vraćeno obećanje odlaže sa greškom tipa AggregateError, koja grupiše sve greške, uzimajući u obzir redosled obećanja. * AggregateError može biti kreiran na sledeći način: new AggregateError(errors, 'No Promise in any was resolved') function any(promises) { // vaš kod ovde }
Šta će se desiti ako jedna od obećanja bude odbačena u funkciji sumPromises?
Šta će se desiti ako ne prosledite nijedno obećanje u funkciju sumPromises?
Koja je razlika između Promise.all i Promise.allSettled?
Zašto se greške u funkciji any ne mogu dodavati putem push, već ih treba zapisivati po indeksu?
Šta će se desiti ako prosledite prazan spisak funkcija u compose?
Implementirajte funkciju sumPromises, koja prihvata obećanja kao argumente i vraća zbir njihovih rezultata. Funkcija može prihvatiti bilo koji broj argumenata. Možete koristiti bilo koji API za obećanja.
Implementirajte funkciju compose koja prihvata promenljiv broj funkcija i vraća novu funkciju. Rezultat svake funkcije se prenosi na sledeću.
Zašto može biti potrebna metoda apply u implementaciji runOnce?
Implementirati funkciju isMonotonic, koja uzima niz brojeva i određuje da li je monotonan (rastući ili opadajući). Vraća true ako je niz monotonan, inače false. Implementirati sa linearnom složenošću O(n).
Implementirajte funkciju runOnce koja prihvata funkciju i vraća novu funkciju. Nova funkcija može biti pozvana samo jednom, svi naredni pozivi vraćaju undefined. Omotana funkcija može prihvatiti argumente i vratiti rezultat.
Da li poznaješ obrazac pipe? Čime se razlikuje od compose?
Koja opcija će biti brža: Promise.all ili petlja sa await na svakom koraku? Zašto?
Zašto je potreban brojač rejectedCount? Zašto jednostavno ne bismo gledali dužinu niza errors?