Frontend
Analizuokite pateiktą Vue kodą: kurios kintamosios yra reaktyvios, kur prarandama reaktyvumas ir kaip tai ištaisyti?
/** * Parašykite funkcijos getObjField tipą * * @param obj - Objekas, iš kurio gaunama reikšmė * @param key - Raktas, pagal kurį gaunama reikšmė * @returns Reikšmė, atitinkanti raktą objekte */ type Obj = { name: string; age: number; }; const getObjField = <K extends keyof Obj>(obj: Obj, key: K): Obj[K] => { return obj[key]; }; const user: Obj = { name: "Nik", age: 25 }; const value1 = getObjField(user, "name"); const value2 = getObjField(user, "age"); const value3 = getObjField(user, "test"); // Klaida: Argumento tipas '"test"' negali būti priskirtas parametrui 'keyof Obj'.
Serverio ir kliento komponentai Next.js App Router, hidratacija
Ar turite patirties su CSS-in-JS ar styled-components?
Kuo skiriasi var, let ir const?
[vardas] paklausė: Jei planavimo metu gali pasirinkti: imti legacy su klaidomis ar naują užduotį su neaiškiu TZ — ką pasirinktum?
Kokia yra pagrindinė problema su Context API? Kodėl pereiti prie būsenos valdytojų? Ar įmanoma išvengti nereikalingų pernaudojimų Context API?
Kaip veikia Change Detection OnPush strategija Angular? Kokiais atvejais komponentas su OnPush yra perpiešiamas?
Įgyvendinkite delay funkciją su nurodyta parašu, naudojant Promise ir setTimeout.
Parašykite tipizuotą sudėjimo funkciją: perduodant du skaičius, ji grąžina skaičių; perduodant du stringus — stringą; o mišrios poros skaičius ir stringas turėtų sukelti TypeScript klaidą.
Kas yra stateful ir stateless komponentai?
Kiek svarbios yra žinios apie Nuxt ir SSR mokantis Vue?
Kokius giluminio kopijavimo metodus žinai JavaScript objektams?
Kodėl pirmiausia vykdomi visi mikro uždaviniai, o tada makro uždaviniai? Kodėl ne atvirkščiai?
Pavadinkite ir palyginkite RxJS aukšto lygio operatorius: switchMap, mergeMap, concatMap ir exhaustMap.
Kada yra blogiausias laikas hash lentelės veikimui?
Pagal numatytuosius nustatymus, JSON iš backend turi tipą any. Kaip apsisaugoti nuo to ir kodėl tai svarbu?
Ar žinote apie paketų optimizavimą, skaidymą į gabalus, lazy loading ir dinaminį importavimą?
function cloneDeep(something: Cloneable): Cloneable { /* * TODO: įgyvendinkite gilų kopijavimą be JSON.parse/stringify */ return JSON.parse(JSON.stringify(something)); } function assertDeep(a: Cloneable, b: Cloneable) { if (JSON.stringify(a) !== JSON.stringify(b)) { console.error("Nėra OK"); } console.log("Gerai"); } const obj: Cloneable = { a: 1, b: true, c: "labas", d: { there: "are", some: ["properties"] }, e: {}, f: [(), (), { key: { value: [1, 2, "3", "four"] } }], g: [] }; assertDeep(obj, cloneDeep(obj));
Kas yra greičio ribojimas ir kaip jį įgyvendinti?