Angular

Fortgeschrittene RxJS-Patterns

Higher-Order Observables, Multicasting, Share-Operatoren, Fehlerwiederherstellung, Retry-Strategien, Backpressure, benutzerdefinierte Operatoren

22 Interview-Fragen·
Senior
1

Was ist der Hauptunterschied zwischen switchMap und mergeMap bei der Verarbeitung gleichzeitiger HTTP-Anfragen?

Antwort

switchMap bricht vorherige Anfragen ab, wenn ein neuer Wert eintrifft, während mergeMap alle aktiven Subscriptions gleichzeitig aufrechterhält. In einer Suchleiste bricht switchMap laufende Anfragen bei neuer Eingabe automatisch ab und verhindert veraltete Ergebnisse. mergeMap eignet sich für unabhängige Aktionen, die alle abgeschlossen werden müssen, wie parallele Datei-Uploads.

2

Wann sollte concatMap statt mergeMap verwendet werden, um eine Warteschlange von Benutzeraktionen zu verarbeiten?

Antwort

concatMap garantiert die Ausführungsreihenfolge, indem es auf den Abschluss jedes inneren Observables wartet, bevor das nächste verarbeitet wird, während mergeMap alle Aktionen parallel ohne Reihenfolgegarantie verarbeitet. Verwenden Sie concatMap für kritische Operationen mit strikter Reihenfolge wie sequenzielle Banktransaktionen oder Chat-Nachrichten. mergeMap eignet sich für unabhängige Aktionen, die parallel laufen können.

3

Was ist ein Higher-Order Observable und warum benötigt es einen Flattening-Operator?

Antwort

Ein Higher-Order Observable ist ein Observable, das andere Observables emittiert. Zum Beispiel ein Click-Observable, das für jeden Klick ein HTTP-Anfrage-Observable emittiert. Ohne Flattening-Operator (switchMap, mergeMap, concatMap) erhält man eine verschachtelte Observable<Observable<T>>-Struktur, die nicht direkt nutzbar ist. Flattening-Operatoren abonnieren innere Observables automatisch und emittieren deren Werte im Hauptstream.

4

Welcher Operator sollte verwendet werden, um eine laufende Suche bei neuer Benutzereingabe automatisch abzubrechen?

5

Wie unterscheidet sich exhaustMap von switchMap bei der Verarbeitung kritischer Anfragen?

+19 Interview-Fragen

Meistere Angular für dein nächstes Interview

Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.

Kostenlos starten