Frontend
// Nepieciešams īstenot metodi groupBy, kas paplašina standarta masīvu metodes. // Metode jāatgriež grupētu masīva versiju — objektu, // kurā atslēgas ir fn(arr[i]) izsaukuma rezultāti katram elementam, // bet vērtības ir masīvi, kas satur visus sākotnējā masīva elementus ar šo atslēgu. // šeit rakstiet kodu // Piemērs 1 const array1 = [ { id: 1 }, { id: 1 }, { id: 2 } ]; const fn = (item) => item.id; console.log(array1.groupBy(fn)); // { // 1: [{ id: 1 }, { id: 1 }], // 2: [{ id: 2 }] // } // Piemērs 2 const array2 = [1, 2, 3]; console.log(array2.groupBy(String)); // { // "1": [1], // "2": [2], // "3": [3] // } // Piemērs 3 const array3 = [1.3, 0.5, 1.4]; console.log(array3.groupBy(Math.round)); // { // 1: [0.5, 1.4], // 3: [1.3] // }
/* Uzrakstiet MyRequired tipu — padara visus opcionalius laukus obligatais */ type User = { id?: number name?: string } type MyRequired<T> = { } const user1: MyRequired<User> = { id: 1, name: "John" } const user2: MyRequired<User> = { id: 1 }
Ko labāk izmantot divu stāvokļu slēdzim (ieslēgts/izslēgts): toggle vai checkbox?
Vai izmantojāt optimistiskus atjauninājumus? Vai sniedzāt lietotājam norādi datu fonā atjaunināšanas laikā?
Kāda bija jūsu aiziešanas no uzņēmuma iemesls?
Kas ir OSI modelis? Kas ir L2, L3, L7?
Kāpēc pametat pirmo uzņēmumu?
Ja Promise nav izpildīts un ir noraidīts, kur mēs varam noķert kļūdu? Kas vēl ir, izņemot then un catch? Kad darbojas finally?
Vai vari pastāstīt mazliet par administratīvā portāla funkcionalitāti pasažieru apkalpošanas aģentiem lidostās?
Kad izsauc useLayoutEffect un kā tas atšķiras no useEffect?
Kuru arhitektūru, stāvokļa pārvaldnieku un komponentu bibliotēku izvēlējās šajā projektā un kāpēc?
Kādi ir galvenie atšķirības starp Vue 2 un Vue 3?
Kāda ir atšķirība starp autorizāciju un autentifikāciju?
Pastāsti par Promise: kas tas ir, stāvokļi un statiskās metodes (īpaši atšķirība starp Promise.all un Promise.race).
/** * Funkcija 'asyncAuth(callback)' pieņem callback, kurā * var tikt nodota kļūda (kā pirmais arguments) un dati * no backend (kā otrais arguments). * asyncAuth((error, data) => {}); * * Jums jārealizē funkcija 'auth()', * kas izsauc 'asyncAuth()', bet atgriež Promise. * * @returns {Promise} */ function auth() { return new Promise((resolve, reject) => { asyncAuth((error, data) => { if (error) { reject(error) } else { resolve(data) } }); }) } /** * Funkcija 'tryAuth()' izmanto 'auth()' un, gadījumā, ja ir kļūda, * veic N papildu mēģinājumus. * Ja visi mēģinājumi neizdodas, atgriež pēdējo kļūdu. * * @returns {Promise} */ function tryAuth(n) { return new Promise((resolve, reject) => { function attempt(attemptsLeft) { auth().then(resolve).catch((error) => { if (attemptsLeft <= 0) { reject(error); } else { attempt(attemptsLeft - 1); } }); } attempt(n); }); }
Ar ko vēlētos strādāt jaunajā vietā, kas jūs interesē nākotnē?
Pastāstiet par savu pieredzi no CV: uzdevumi, tehnoloģijas, panākumi un sasniegumi vairāk nekā trīs ar pusi gadu darba Sovcombank.
Pastāstiet par procesiem pēdējā komandā: sprinti, kanbans, plānošana — kā tas bija praksē?
Pastāsti sīkāk par panelēm: no kurienes tika ņemtas metriku, kādas metriku jūs vācat.
Jūs minējāt UI-kit. Kurš komponent ir bija visgrūtāk vai interesantāk īstenot, un kurš radīja lielāko izaicinājumu?