Frontend
Perché hai deciso di cambiare lavoro ora?
Hai menzionato l'autorizzazione — quali approcci hai usato? Quale esperienza hai con l'autorizzazione?
Parlami del compito più interessante o del fallimento più interessante in uno dei tuoi ultimi due lavori.
E l'ultimo progetto, quanti sviluppatori c'erano in totale, che tipo di team era, con chi bisognava comunicare?
Con quali framework o strumenti lavori? Utilizzi strumenti di IA nel tuo lavoro?
Aspettative salariali — 270 mila rubli?
Quando il progetto si espande e si possono distinguere più entità di business (area personale, profilo, promozioni), è possibile dividerle in repository separati e collegarli come micro frontend?
Qual è la differenza tra REST API e WebSocket?
Compito pratico: scrivere una funzione che accetta un numero e restituisce una Promise con il risultato della verifica di parità/disparità, e in caso di errore (non è un numero) restituisce -1.
Chiarisci: il trasferimento è stato da JS/JSVue a React e TypeScript, e ora è prevista una migrazione ai microfrontend?
Implementa la funzione promisify: prende una funzione con callback error-first (loadScript) e restituisce una nuova funzione che accetta qualsiasi argomento, aggiunge un callback error-first e avvolge la chiamata in una Promise.
Cosa è preferibile usare per memorizzare dati per chiave: Map o un oggetto normale? Quali sono i vantaggi di Map?
Parla delle variabili var, let, const: ambiti, hoisting, zona morta temporanea.
Come correggere le riduzioni di rendering eccessive in modo che, cliccando su 'Rerender', venga renderizzato solo App, e inserendo testo, solo Parent (senza Child)?
let a = 5; setTimeout(function timeout() { //macro console.log(a); a = 10; }, 0); let p = Promise.resolve().then(data => { console.log(a); a = 25; resolve(); }).then() console.log(a); // 5 25 25
Cosa si può configurare in ESLint e quali plugin o configurazioni vengono utilizzati?
Spiegazione chiara, Dmytro—buona gestione della delega e controlli "più vicini"; il tuo flusso è facile da seguire. Quando dici che gestisci la tastiera "allo stesso modo", puoi spiegarmi esattamente quali tasti supporti e come impedisci che il focus si posi su link disabilitati?
Hai menzionato lo sviluppo di una libreria di componenti UI-kit riutilizzabili basata su Angular Material. Esiste una differenza sostanziale tra i componenti della libreria e i componenti multifunzionali normali dell'applicazione? Cosa si può trascurare nei componenti normali ma non in quelli della libreria?
Non sai in quale specializzazione sia [nome] — frontend, backend o DevOps — e quale sia il suo ruolo nell'azienda?
// È necessario implementare il metodo groupBy, che estende i metodi standard degli array. // Il metodo dovrebbe restituire una versione raggruppata dell'array — un oggetto, // in cui le chiavi sono i risultati della chiamata della funzione fn(arr[i]) per ogni elemento, // e i valori sono array contenenti tutti gli elementi dell'array originale con questa chiave. // codice qui // Esempio 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 }] // } // Esempio 2 const array2 = [1, 2, 3]; console.log(array2.groupBy(String)); // { // "1": [1], // "2": [2], // "3": [3] // } // Esempio 3 const array3 = [1.3, 0.5, 1.4]; console.log(array3.groupBy(Math.round)); // { // 1: [0.5, 1.4], // 3: [1.3] // }