Erzählen Sie mir von useCallback — Anwendungsfall, wozu ist es notwendig?
Frontend
Was macht der Operator in in TypeScript?
Erzählen Sie über die Arbeit mit Formularen in React: kontrollierte und unkontrollierte Komponenten, Vor- und Nachteile jedes Ansatzes.
Erzählen Sie mir von den Phasen des Lebenszyklus von React-Komponenten
Was ist React.memo? Wann wird useCallback angewendet?
const X = { a: 1, b: 2, c: 3, d: 4 } function getProperty(obj, key) { // Aufgabe: Funktion typisieren return obj[key] } getProperty(X, 'a') // kein Fehler getProperty(X, ' ') // Fehler: Schlüssel ist kein gültiger Schlüssel für das Objekt X getProperty({ name: 'Sergey' }, 'name') // kein Fehler
Aufgabe: Durchlaufen eines Objektbaums (jedes Objekt hat die Felder value und elements) und die Summe aller Werte berechnen. Wie würdest du das umsetzen?
const LiveSearch = () => { const [inputValue, setInputValue] = useState('') const onInputChange = (e) => { setInputValue(e.target.value) search(e.target.value) } return ( <div> <input value={inputValue} onChange={onInputChange} type="text" /> </div> ) } <span> Suche nach: <LiveSearch /> </span>
import React, { useState, useEffect, useRef, useContext, useReducer, useMemo } from 'react'; export default () => { const [count, setCount] = useState(0); useLayoutEffect(() => console.log("jeder Render 1")); console.log("jeder Render 2"); useEffect(() => { console.log("jeder Render 3"); return () => { console.log(4); }; }, [count]); return ( <button onClick={() => setCount((prevProps) => ++prevProps)}> Erhöhen </button> ); }
// Vom Server erhaltene Daten zum Preis des Produkts in der Form: // 12345678 (der Preis kann jede Zahl im Bereich von 1 bis [phone] sein) // Es ist notwendig, eine Funktion zu schreiben, die den Preis in eine formatierte Zeichenkette umwandelt: // 12'345'678
const { foo: [bar], bar: [{ baz: foo }] } = { foo: [1], bar: [{ baz: 3 }] } console.log(bar) console.log(foo) //
function sum(a, b) { return a + b; } function memo() {}
Was ist eine Aufräumfunktion (cleanup) in useEffect? Wann wird sie ausgeführt? Schreiben Sie sie in useEffect.
Wie schreibt man eine Funktion, die ein Promise zurückgibt, das nach einer Sekunde auflöst?
Wie zeigt man einem angemeldeten Benutzer auf allen Geräten nur einmal ein Banner an?
Erzählen Sie mir vom Virtual DOM und dem Reconciliation-Mechanismus in React. Wie optimiert React den Vergleich von Bäumen?
Haben Sie schon einmal mit Blob gearbeitet? Wie erstellt man einen Link zum Herunterladen einer dynamisch generierten Datei?
let x = 5; (function () { console.log(x); let x = 0; })()
Was ist der Unterschied zwischen Rendering und Malen? Wie heißt der Prozess des Vergleichs zwischen dem virtuellen und dem realen DOM-Baum?
Wie implementiert man eine Baum traversal ohne Rekursion? Welche Datenstruktur hilft?