Uită-te la acest fragment de cod — înțelege ce face și scrie un exemplu simplu de utilizare. De asemenea, există un helper similar în lodash.
Frontend
Ai lucrat vreodată cu Lighthouse? Imaginează-ți că ți se atribuie sarcina de a îmbunătăți metricile FCP (First Contentful Paint). Ce idei îți vin în minte?
const customMap = (array, transform) => { // ceva de genul array.map(transform); }; const stringResults = customMap([1, 2, 3], item => item.toString()); const lengths = customMap(["salut", "lume"], item => item.length);
Care sunt problemele în abordarea actuală a încărcării datelor SSR și cum se vor extinde odată cu adăugarea de noi pagini?
Implementați o funcție foo care primește un array și returnează un obiect în care cheile sunt elementele array-ului și valorile sunt toate 0.
Cum te dezvolți, cum înveți tehnologii noi, ce ți-a rămas cel mai mult în memorie recent?
Ce îți place cel mai mult să faci la muncă și ce nu prea? Ce necesită mai mult timp decât ai dori?
Ce lucruri interesante și noi ai învățat recent în lumea frontend-ului?
Povestiți despre ultimul loc de muncă și proiectele la care ați lucrat.
Cum se poate asigura suportul pentru formatele moderne de imagini (WebP, AVIF) în browserele care nu le suportă?
În ce moment vei anunța că nu vei reuși să termini la timp?
Determină ordinea de afișare în consolă pentru codul cu setTimeout, Promise, then, catch, finally și diverse apeluri sincrone (exercițiu despre Event Loop).
Ce se poate întâmpla pe server în timpul generării HTML (SSR) — la ce cheltuie serverul timp, care pot fi probleme de performanță și securitate în serializarea datelor?
Care este diferența dintre utilizarea hasOwnProperty și verificarea directă a valorii printr-o condiție (if o[x])? Ce se întâmplă dacă valoarea proprietății este false?
Ce îmbunătățiri s-ar putea face pentru a crește calitatea produsului în viitor?
Există o funcție customMap care face aproape același lucru ca și map-ul obișnuit al unui array, dar nu este tipizată. Trebuie să o tipizăm astfel încât în linia a cincea să fie un array de șiruri, iar în a șaptea — un array de numere.
Implementați o funcție memoize care stochează în cache rezultatele apelurilor funcțiilor asincrone și nu trimite o solicitare repetată dacă apelul cu aceiași argumente a fost deja făcut.
La folosește React.lazy? Ce beneficiu aduce și cum funcționează în spate?
Trebuie să scrii o funcție memoize — un wrapper pentru memoizare. Pentru simplitate, poți considera că funcția va avea întotdeauna doar un argument, și acesta va fi o valoare primitivă.
<script> function sum(valueA) { throw 'Neimplementat' } console.log(sum(1)()); // 1 console.log(sum(1)(2)()); // 3 console.log(sum(1)(2)(-3)()); // 0 </script>