Parlami di memorizzazione in React: useMemo, useCallback, React.memo. Quando usarli?
Frontend
Perché hai usato JSON.stringify? Si poteva usare una Map invece di un oggetto per la cache?
const X = { a: 1, b: 2, c: 3, d: 4 } function getProperty<T>(obj: T, key: keyof T) { // Compito: tipizzare la funzione return obj[key] } getProperty(X, 'a') // nessun errore getProperty(X, 'e') // errore: la chiave 'e' non è una chiave dell'oggetto X getProperty({ name: 'Sergey' }, 'name') // nessun errore getProperty(1, 1) // Errore. Il primo argomento deve essere un oggetto (non una funzione o un primitive)
Parlami della tua esperienza con le tue parole, cosa vorresti evidenziare, momenti tecnici interessanti dal tuo curriculum.
const { foo: [bar], bar: [{ baz: foo }] } = { foo: [1], bar: [{ baz: 3 }] } console.log(bar) // 1 console.log(foo) // 3
Per favore, dimmi, qual è la differenza tra Map e oggetto?
Cos'è l'ambito di visibilità? Quali sono gli ambiti di visibilità delle variabili?
const submit = (el) => () => { log(el); } arr.map(el => <button onClick={submit(el)}/>) arr.map(el => <SomeComp key={} pmclick={() => submit(el)} />) const param = useMemo(() => ([c: a + b]), [a,b]) return <Child value={param} /> Child = React.memo(() => {})
Parlami di archiviazione dei dati: cookie, localStorage, sessionStorage. Come avveniva l'autenticazione con i token nel tuo progetto?
let a = 2 function foo() { console.log(a) } function bar() { let a = 1 foo() } bar() //
Dove possiamo memorizzare lo stato lato browser? Raccontami di loro.
Conosci strumenti come Confluence, Jenkins e i servizi interni (EFS, RMC)?
Parla di Promise: stati, metodi statici (all, allSettled, any, race).
Qual è la differenza tra un'espressione di funzione e una dichiarazione di funzione?
Se una Promise non si risolve e si rifiuta, dove possiamo intercettare l'errore? Cos'altro oltre then e catch esiste? Quando viene eseguito finally?
Quanto spesso hai lavorato con il contesto (this) in JavaScript? Spiega la perdita di contesto e i modi per risolverla (bind, call, apply, funzioni freccia, salvataggio in variabile).
Parlami del tuo ruolo nel team: eri il leader, la mano destra del leader, avevi esperienza nel prendere decisioni autonome? Come venivano delegate le ruoli?
Cosa fa l'operatore in in TypeScript?
const X = { a: 1, b: 2, c: 3, d: 4 } function getProperty(obj, key) { // Compito: tipizzare la funzione return obj[key] } getProperty(X, 'a') // nessun errore getProperty(X, 'r') // errore: la chiave r non è una chiave dell'oggetto X getProperty({ name: 'Sergey' }, 'name') // nessun errore
Parla del lavoro con i moduli in React: componenti controllati e non controllati, vantaggi e svantaggi di ogni approccio.