Entrevista · Fundamentos
Virtual DOM
¿Por qué React no toca el DOM directamente?
El Virtual DOM es una representación en memoria del árbol de UI. React lo compara contra el estado anterior (reconciliación) y solo aplica al DOM real los cambios mínimos necesarios — en lugar de reescribirlo entero.
El ciclo completo
Render → React genera un nuevo árbol de objetos JS. Diffing → Compara el árbol nuevo contra el anterior (algoritmo O(n)). Commit → Solo las diferencias se aplican al DOM real. El DOM es lento; los objetos JS son rápidos — ahí está la ganancia.
Reconciliación y keys
Cuando React compara listas necesita identificar qué elemento es qué. Sin key, asume posición y puede reutilizar el nodo equivocado. Con key estable, reconcilia correctamente incluso al reordenar.
Tropiezos comunes
- 01El Virtual DOM no es siempre más rápido que el DOM directo — frameworks como Svelte prescinden de él y son igual de rápidos para casos simples.
- 02Usar el índice como key es un anti-patrón cuando la lista puede reordenarse o tener inserciones.
- 03React Native también usa reconciliación, pero en lugar de DOM aplica los cambios a vistas nativas.
¿Fue útil?
Inicia sesión para dar feedback
