Objasnite šta će se desiti sa Promise-om ako asyncCall greškom pozove prosleđeni callback više puta: prvo sa greškom, zatim sa podacima i na kraju ponovo sa greškom.
Frontend
Gde u pravoj aplikaciji može biti korisna funkcija callLimit sa mogućnošću resetovanja brojača?
Koja je razlika između provere 'key in result' i 'result.hasOwnProperty(key)'?
Kako još možete dobiti numeričku vrednost iz this (pored Number(this))?
/** * Implementirajte funkciju compose, koja prihvata * promenljiv broj funkcija i vraća novu funkciju. * Rezultat svake funkcije se prosleđuje sledećoj. */ // Kod ovde const square = (x) => x * x; const times2 = (x) => x * 2; const sum = (a, b) => a + b; console.clear(); console.log(compose(square, times2)(2) === square(times2(2))); console.log(compose(square, times2, sum)(3, 4) === square(times2(sum(3, 4))));
Napišite funkciju sleep koja vraća Promise i završava nakon zadatog broja milisekundi.
Implementirajte funkciju sumPromises, koja prihvata obećanja kao argumente i vraća zbir njihovih rezultata. Funkcija može prihvatiti bilo koji broj argumenata, može koristiti bilo koji API za obećanja.
Implementirajte metodu Array.prototype.groupBy, koja vraća strukturiranu verziju niza objekata, gde je svaki ključ rezultat poziva prosleđene funkcije, a vrednost je niz elemenata koji odgovaraju tom ključu.
Kako pretvoriti pseudo-niz arguments u pravi niz? Navedite nekoliko načina.
Zašto vreme izvršavanja sleep nije tačno 1000 i 2000 milisekundi, već malo više? Šta utiče na kašnjenje?
/** * 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 obećanja. */ // Kod ovde // Primer upotrebe const promise1 = Promise.resolve(1); const promise2 = Promise.resolve(2); sumPromises(promise1, promise2).then(console.log); // 3
Zašto se koristi Array.prototype.slice.call(arguments)? Kako funkcionišu call i apply?
9. Копирање Током испита, професор Флойд је приметио да неки студенти размењују белешке. У почетку, желео је да свима постави двојке, али професор је био љубазан, па је одлучио да студенте подели у две групе: оне који дозвољавају копирање и да прво даје двојке. Професор је забележио све парове студената који су размењивали белешке. Потребно је одредити да ли може да подели студенте у две групе тако да свака размена белешки буде од студента једне групе до студента друге групе. Формат улаза У првом реду су два броја N и M — број студената и број парова студената који су размењивали белешке (1 ≤ N ≤ 10^2, 0 ≤ M ≤ N(N-1)/2). Затим, у M редова, описани су парови студената: два броја који одговарају бројевима студената који су размењивали белешке (нумерација студената почиње од 1, сваки пар студената је наведена не више од једном). Формат излаза Потребно је исписати одговор на задатак професора Флоида. Ако је могуће поделити студенте у две групе - испишите YES; иначе, NO.
[ime] je pitao: У случају паралелног развоја, да ли су извођачи сами разјаснили уговоре?
Koje još metode Promise API poznaješ osim Promise.all?
/** * Implementirajte funkciju isMonotonic, koja prima * niz brojeva i određuje da li je * monoton (ne rastući ili ne opadajući). * * @param {Array<number>} numbers - niz brojeva * @return {boolean} - true ako je niz monoton, inače false */ function isMonotonic(numbers) { // vaš kod ovde }
Prepišite funkciju strjoin u ES5 bez rest operatora
Ispričaj mi o svom trenutnom radnom mestu i projektu
Za svaki od tri fragmenta JavaScript koda odredite šta će biti prikazano u konzoli i objasnite razlike u ponašanju primitiva, objekata i prepisivanja referenci.
Zašto može biti potrebna metoda apply u rešenju runOnce?