Sobes.tech

Frontend

La optimizarea încărcării unei aplicații frontend grele cu 150 de pictograme mici, ar trebui să se combine pictogramele într-un singur sprite sau să se folosească CSS-inlining atunci când se utilizează HTTP/2 sau HTTP/3?

143

Utilizatorul tastează rapid în câmpul de căutare. Care este diferența dintre `debounce`, `throttle` și `AbortController` din perspectiva UX și a încărcării rețelei/backend? Care este mai bun pentru căutarea live?

124

Imaginează-ți o coadă de macro-tasks cu cinci `setTimeout`, iar microtasks adaugă infinit noi microtasks, de exemplu prin `Promise.resolve().then()` recursiv. Ce se va întâmpla cu interfața și vor fi aceste cinci timeout-uri executate vreodată? De ce?

120

Implementați o funcție `debounce` care suportă apelul imediat la începutul unei serii de evenimente (`leading`), un apel trailing la sfârșitul seriei în mod implicit și o metodă `debounceFunc.cancel()` pentru a anula apelul programat.

120

Implementați o funcție simplificată `reactive(object)` care imită Vue 3: la citirea unei proprietăți, apelați `track(target, key)`, iar la modificarea unei proprietăți, apelați `trigger(target, key)`.

108