Zašto su se pojavile obećanja ako je asinhronost mogla biti organizovana pomoću generatora? Šta je bilo nezgodno u callback pristupu?
Frontend
На чему тренутно радите?
U kojim slučajevima će se izvršenje fetch ući u catch? Kako odrediti da li je zahtev uspešan ili ne, i odakle dolazi HTTP status?
Šta znate o redosledu povezivanja i izvršavanja skripti: običan skript, async i defer?
Šta je CORS i koje su opcije za rešavanje problema sa zahtevima između domena?
Koji su načini za zaobilaženje pretplatnika pohranjenog u Set?
Tipizirajte funkciju transformacije niza u TypeScript-u: definišite potrebne generičke tipove za tip elemenata izvornog niza i tip rezultata.
Implementirajte funkciju memo(fn, lifetime) koja vraća novu funkciju i kešira rezultat originalne funkcije bez argumenata za određeno vreme u milisekundama. Trebalo bi da kešira samo poslednji rezultat, bez ključeva i Map; ponovni poziv unutar vremena trajanja treba da vrati keširani rezultat.
Implementirajte klasu u TypeScript-u po uzorku 'Observer': ona čuva podatke u objektu, omogućava pretplatu i odjavu putem subscribe/unsubscribe i obaveštava pretplatnike pri promeni podataka putem dodele. Uključite getter i setter; početna vrednost treba da bude prazan objekat.
Opišite faze renderovanja stranice u pretraživaču: DOM, CSSOM, render stablo, layout/reflow, repaint i compositing. Koje osobine je poželjno animirati i zašto?
Implementirajte asinhronu red za zadatke sa ograničenjem paralelizma: zadaci se prvo dodaju u red, zatim se pokreću metodom loop; ne više od određenog broja zadataka treba da se izvršava istovremeno. Kada svi zadaci u redu i oni koji se izvršavaju budu završeni, obavestite o završetku reda.
Implementirajte funkciju koja pokušava fetch zahteve više puta u slučaju neuspeha. Šta bi trebalo da se desi nakon što se iscrpe pokušaji?
Šta se dešava u pregledaču nakon unosa URL-a?
Kako se može implementirati red zadataka koristeći promises bez zastavica i brojača? Šta je worker u kontekstu takvog reda?