Angular

Patterns RxJS avancés

Higher-order observables, multicasting, share operators, error recovery, retry strategies, backpressure, custom operators

22 questions d'entretien·
Senior
1

Quelle est la différence principale entre switchMap et mergeMap dans le traitement de requêtes HTTP concurrentes ?

Réponse

switchMap annule les requêtes précédentes lorsqu'une nouvelle valeur arrive, tandis que mergeMap maintient toutes les souscriptions actives simultanément. Dans une barre de recherche, switchMap annule automatiquement les requêtes en cours lors d'une nouvelle saisie, évitant les résultats obsolètes. mergeMap convient aux actions indépendantes qui doivent toutes se terminer, comme des uploads de fichiers en parallèle.

2

Dans quel cas utiliser concatMap plutôt que mergeMap pour traiter une file d'actions utilisateur ?

Réponse

concatMap garantit l'ordre d'exécution en attendant la fin de chaque observable interne avant de traiter le suivant, tandis que mergeMap traite toutes les actions en parallèle sans garantie d'ordre. Utiliser concatMap pour des opérations critiques nécessitant un ordre strict, comme des transactions bancaires séquentielles ou l'envoi de messages dans un chat. mergeMap convient aux actions indépendantes pouvant s'exécuter en parallèle.

3

Qu'est-ce qu'un higher-order observable et pourquoi nécessite-t-il un opérateur de flattening ?

Réponse

Un higher-order observable est un observable qui émet d'autres observables. Par exemple, un observable de clics qui émet un observable de requête HTTP pour chaque clic. Sans opérateur de flattening (switchMap, mergeMap, concatMap), on obtient une structure imbriquée Observable<Observable<T>> impossible à utiliser directement. Les opérateurs de flattening souscrivent automatiquement aux observables internes et émettent leurs valeurs dans le flux principal.

4

Quel opérateur utiliser pour annuler automatiquement une recherche en cours lors d'une nouvelle saisie utilisateur ?

5

Comment exhaustMap diffère-t-il de switchMap dans la gestion de requêtes critiques ?

+19 questions d'entretien

Maîtrise Angular pour ton prochain entretien

Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.

Commencer gratuitement