Kāda ir atšķirība starp Promise.any un Promise.race?
Frontend
* Funkcija pieņem masīvu ar solījumiem (pieņemam, ka tas nav tukšs) un atgriež solījumu. * Ja kāds no nodotajiem solījumiem tiek atrisināts (veiksmīgi izpildīts), tad atgrieztais solījums tiek atrisināts ar šo vērtību. * Ja vairāki solījumi tiek veiksmīgi pabeigti, tad atgrieztais solījums * tiek atrisināts * ar pirmo veiksmīgo vērtību, neatkarīgi no solījumu kārtības masīvā. * Ja visi nodotie solījumi tiek noraidīti, tad atgrieztais solījums tiek noraidīts ar kļūdu veidā AggregateError, kura grupē visas kļūdas, ņemot vērā solījumu kārtību. * AggregateError var izveidot šādi: new AggregateError(errors, 'No Promise in any was resolved') function any(promises) { // jūsu kods šeit }
Kas notiks, ja sumPromises funkcijai netiks nodota neviena solījuma?
Kāpēc kļūdas funkcijā any nevar pievienot ar push, bet tās jāieraksta pēc indeksa?
Kas notiks, ja viena no solījumiem tiks noraidīta sumPromises funkcijā?
Kas notiks, ja nodosiet tukšu funkciju sarakstu uz compose?
Kāda ir atšķirība starp Promise.all un Promise.allSettled?
Izpildiet funkciju sumPromises, kas pieņem solījumus kā argumentus un atgriež to rezultātu summu. Funkcija var pieņemt jebkura skaita argumentus. Jūs varat izmantot jebkuru solījumu API.
Realizējiet compose funkciju, kas pieņem mainīgu skaitu funkciju un atgriež jaunu funkciju. Katras funkcijas rezultāts tiek nodots nākamajai.
Izpildiet funkciju isMonotonic, kas pieņem skaitļu masīvu un nosaka, vai tas ir monotonisks (augošs vai dilstošs). Atgrieziet true, ja masīvs ir monotonisks, citādi false. Izpildiet ar lineāru sarežģītību O(n).
Kāpēc varētu būt nepieciešama metode apply runOnce īstenošanā?
Kura opcija būs ātrāka: Promise.all vai cilpa ar await katrā solī? Kāpēc?
Vai tu zini par pipe paraugu? Kā tas atšķiras no compose?
Realizējiet runOnce funkciju, kas pieņem funkciju un atgriež jaunu funkciju. Jaunā funkcija var tikt izsaukta tikai vienu reizi, visi turpmākie izsaukumi atgriež undefined. Iepakotā funkcija var pieņemt argumentus un atgriezt rezultātu.
Kāpēc ir nepieciešams rejectedCount skaitītājs? Kāpēc vienkārši neskatīties uz errors masīva garumu?