Angular

Patrones avanzados de RxJS

Higher-order observables, multicasting, operadores share, recuperación de errores, estrategias de retry, backpressure, operadores personalizados

22 preguntas de entrevista·
Senior
1

¿Cuál es la principal diferencia entre switchMap y mergeMap al manejar peticiones HTTP concurrentes?

Respuesta

switchMap cancela las peticiones anteriores cuando llega un nuevo valor, mientras que mergeMap mantiene todas las suscripciones activas simultáneamente. En una barra de búsqueda, switchMap cancela automáticamente las peticiones en curso ante nueva entrada, evitando resultados obsoletos. mergeMap es adecuado para acciones independientes que deben completarse todas, como cargas de archivos en paralelo.

2

¿Cuándo se debe usar concatMap en lugar de mergeMap para procesar una cola de acciones de usuario?

Respuesta

concatMap garantiza el orden de ejecución esperando que cada observable interno se complete antes de procesar el siguiente, mientras que mergeMap procesa todas las acciones en paralelo sin garantía de orden. Use concatMap para operaciones críticas que requieren orden estricto, como transacciones bancarias secuenciales o envío de mensajes en chat. mergeMap es adecuado para acciones independientes que pueden ejecutarse en paralelo.

3

¿Qué es un higher-order observable y por qué requiere un operador de flattening?

Respuesta

Un higher-order observable es un observable que emite otros observables. Por ejemplo, un observable de clics que emite un observable de petición HTTP por cada clic. Sin un operador de flattening (switchMap, mergeMap, concatMap), se obtiene una estructura anidada Observable<Observable<T>> imposible de usar directamente. Los operadores de flattening se suscriben automáticamente a los observables internos y emiten sus valores en el flujo principal.

4

¿Qué operador usar para cancelar automáticamente una búsqueda en curso cuando el usuario escribe nueva entrada?

5

¿Cómo difiere exhaustMap de switchMap en el manejo de peticiones críticas?

+19 preguntas de entrevista

Domina Angular para tu próxima entrevista

Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.

Empieza gratis