Frontend
Wo kann HOC in der Praxis eingesetzt werden?
Um zu beginnen, könntest du mir ein bisschen über deine Erfahrung beim Schreiben von automatisierten Tests erzählen, insbesondere Unit- und Integrationstests? Danke, dass du das teilst. Hast du auch mit Testframeworks wie Playwright gearbeitet?
Welche Profiling-Tools verwendest du? Musstest du schon einmal Speicher-Dumps erstellen?
War die Verwendung von Webpack eine bewusste Entscheidung oder war es bereits vorhanden?
Setze die Zahlen anstelle der Fragezeichen, damit in der Konsole die Reihenfolge 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ausgegeben wird (Aufgabe zu Event Loop, Promise, setTimeout)
Ist JavaScript ein- oder mehrthreadig? Wodurch funktioniert die Asynchronität?
Welche Phasen des Browser-Renderings können optimiert werden, um unnötige Neuberechnungen zu vermeiden, und wie kann man das tun?
Welche Möglichkeiten gibt es, Elemente auf der Seite zu positionieren (CSS position)?
Hattest du schon einmal eine negative Erfahrung im Team, zum Beispiel intensive Streitigkeiten bei Code-Reviews? Wie würdest du in einer solchen Situation handeln?
Kennst du das EventEmitter-Muster? Implementiere eine Klasse mit den Methoden subscribe, unsubscribe und fire.
class Foo { bar = 1; bla = () => console.log(this.bar); baz = function () {console.log(this.bar);}; } new Foo().bla(); new Foo().baz(); Kurz gesagt: `this` ist kein Gültigkeitsbereich, sondern der Aufrufkontext der Funktion. Er wird nicht dort bestimmt, wo die Funktion deklariert wird, sondern dort, wo sie aufgerufen wird. Man kann 3-4 Regeln hinzufügen: - Normale Funktionsaufrufe — `this` ist im Strict Mode meist undefined. - Objektmethode — `this` zeigt auf das Objekt links vom Punkt. - `call / apply / bind` — erlauben es, `this` explizit zu setzen. - Pfeilfunktionen — haben kein eigenes `this`, nehmen es aus dem äußeren Kontext.
Erzählen Sie, was mit alten Anfragen passiert, wenn der Benutzer wechselt, und wie `AbortController` Race Conditions (Rennbedingungen) verhindert.
Wie kann man JSON sequenziell analysieren, indem man die Verarbeitung in Chunks aufteilt, um den Hauptthread nicht zu blockieren? Womit kann man die Verarbeitung des nächsten Chunks starten, um die Seite nicht zu verlangsamen (z.B. requestIdleCallback, Generatoren)?
Was sind useMemo, useCallback und React.memo? Wann ist es besser, sie zu verwenden?
Haben Sie mit dem Dateisystem, der Kamera oder anderen nativen Funktionen in React Native gearbeitet?
Wie würdest du den wiederholten Code der onChange-Handler für die E-Mail- und Passwortfelder optimieren?
function memoize(fn, options = {}) { const { maxSize = 1000, keyOf = (...a) => JSON.stringify(a), lruTouch = true, } = options; let hits = 0; let misses = 0; const cache = new Map(); const getKey = (...args) => keyOf(...args); const wrapped = (...args) => { // schreibe den Code hier return fn(...args); }; // und hier return wrapped; }
Welche grundlegenden Prinzipien der OOP kennen Sie? Erzählen Sie über jedes.
Wovon hängt die EM-Einheit ab: vom nächsten REM oder von der Schriftgröße des Elternteils?
Wofür wird das Schlüsselwort infer in TypeScript verwendet?