Vorbește-mi despre memoizare în React: useMemo, useCallback, React.memo. Când să le folosești?
Frontend
Spune-mi despre experiența ta în cuvintele tale, ce ai dori să evidențiezi, momente tehnice interesante din CV-ul tău.
De ce ai folosit JSON.stringify? Se putea folosi Map în loc de obiect pentru cache?
const X = { a: 1, b: 2, c: 3, d: 4 } function getProperty<T>(obj: T, key: keyof T) { // Sarcina de a tipa funcția return obj[key] } getProperty(X, 'a') // fără eroare getProperty(X, 'e') // eroare, cheia 'e' nu este o cheie pentru obiectul X getProperty({ name: 'Sergey' }, 'name') // fără eroare getProperty(1, 1) // Eroare. Primul argument trebuie să fie un obiect (nu o funcție și nu un primitiv)
const { foo: [bar], bar: [{ baz: foo }] } = { foo: [1], bar: [{ baz: 3 }] } console.log(bar) // 1 console.log(foo) // 3
Te rog, spune-mi, care este diferența dintre Map și obiect?
Ce este domeniul de vizibilitate? Pentru ce variabile există ce domenii de vizibilitate?
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(() => {})
Unde putem stoca starea pe partea de browser? Vorbește despre ele.
Vorbește despre Promise: stări, metode statice (all, allSettled, any, race).
Povestește-mi despre stocarea datelor: cookies, localStorage, sessionStorage. Cum se realiza autorizarea cu token-uri în proiectul tău?
Ești familiar cu instrumente precum Confluence, Jenkins și serviciile interne (EFS, RMC)?
Care este diferența dintre o expresie de funcție și o declarație de funcție?
să fie a = 2 funcția foo() { console.log(a) } funcția bar() { let a = 1 foo() } bar() //
Dacă Promise nu s-a rezolvat, ci a fost respins, unde putem captura eroarea? Ce alte metode, în afară de then și catch, mai există? Când se execută finally?
Vorbește-mi despre rolul tău în echipă: ai fost lider, mâna dreaptă a liderului, ai avut experiență în a lua decizii independente? Cum au fost delegate rolurile?
Cât de des întâlnit să lucrezi cu contextul (this) în JavaScript? Explică pierderea contextului și modalitățile de rezolvare (bind, call, apply, funcții săgeată, salvare într-o variabilă).
const X = { a: 1, b: 2, c: 3, d: 4 } function getProperty(obj, key) { // Sarcina de a tipa funcția return obj[key] } getProperty(X, 'a') // fără eroare getProperty(X, 'r') // eroare, cheia r nu este o cheie pentru obiectul X getProperty({ name: 'Sergey' }, 'name') // fără eroare
Ce face operatorul in în TypeScript?
Vorbește despre lucrul cu formularele în React: componente controlate și necontrolate, avantajele și dezavantajele fiecărei abordări.