Fusionar JSON — Fusionar dos documentos en línea

Combina un documento JSON de partida con una superposición en fusión profunda o superficial. El resultado se actualiza automáticamente, y una vista previa en vivo de los conflictos te ayuda a controlar arrays, null y la resolución de conflictos.

Cargando…
JSON merge, guía de combinación de documentos
Fusiona el JSON de partida con una superposición, con control sobre profundidad, arrays, conflictos y valores nulos. Previsualiza los conflictos antes de copiar.

Notas para desarrolladores

Ambos documentos deben ser JSON válido. Fusión automática — el resultado se actualiza cuando ambas entradas son válidas (con debounce) y al cambiar opciones; sin botón Fusionar. B gana es la estrategia de conflicto por defecto: los valores de la superposición sobrescriben escalares de la base. Error en conflicto bloquea la salida y lista las rutas JSON en conflicto. Unión por clave fusiona arrays de objetos como un upsert de base de datos en `id`. Ignorar nulls omite valores null de la superposición — útil para parches dispersos. Esto no es RFC 7386 Merge Patch — la herramienta produce un documento fusionado, no un archivo de parche. Tras fusionar, usa JSON diff para verificar contra tu línea base esperada.

Opciones de fusión JSON

Profundidad de fusión
La fusión profunda combina objetos anidados clave por clave; la superficial reemplaza objetos y arrays anidados completos de la superposición.
Estrategia de arrays
Reemplazar (por defecto), concatenar, concatenar valores únicos o unir arrays de objetos por un campo clave.
Clave de unión
Campo usado para hacer upsert de objetos cuando la estrategia de array es unión por clave, similar a una fusión de base de datos en `id`.
Resolución de conflictos
Gana la superposición (por defecto), gana la base o error en conflicto para bloquear la salida y listar rutas en conflicto.
Gestión de null
Ignorar los valores null de la superposición (por defecto), fusionar los null o eliminar claves cuando la superposición establece null.
Tamaño de indentación
Espacios por nivel de indentación en la salida fusionada formateada.
Estilo de indentación
Espacios o tabulaciones para el formateo de salida.

Cuándo elegir esta herramienta

Fusionar config de entorno (base + superposición de staging). Combinar overrides de package.json. Ensamblar respuestas API parciales. Aplicar deltas de feature flags a un archivo de valores por defecto.

Ejemplos prácticos

Fusión profunda de config

Base (A)

documentation.jsonTools.jsonMerge.examples.one.before

Superposición (B)

El puerto pasa a 8080. Ambas claves de features permanecen tras una fusión profunda en la que gana la superposición en caso de conflicto.

Concatenación de arrays

Base (A)

documentation.jsonTools.jsonMerge.examples.two.before

Superposición (B)

Los tags pasan a ser `["alpha","beta","gamma"]` con la estrategia de array en concat.

Explorar herramientas JSON relacionadas

Compara la salida fusionada en JSON diff. Normaliza primero el orden de claves con ordenar JSON. Comprueba con el validador JSON, corrige la sintaxis con reparación JSON o explora el hub de herramientas JSON.

FAQ JSON merge

Fusión o diff, arrays y valores nulos

¿Debo hacer clic en Fusionar?

No. El JSON fusionado se actualiza automáticamente cuando ambos documentos son válidos y cada vez que cambias las opciones de fusión.

¿En qué se diferencia JSON merge de JSON diff?

JSON diff resalta diferencias entre dos documentos. JSON merge produce un único documento combinado según tus reglas de profundidad, arrays y conflictos.

¿Qué documento gana en conflictos?

Por defecto la superposición (documento B) gana en conflictos escalares. Puedes cambiar a gana la base o error en conflicto.

¿Qué diferencia hay entre fusión superficial y profunda?

La fusión profunda combina objetos anidados clave por clave. La fusión superficial reemplaza objetos y arrays anidados completos de la superposición.

¿Cómo se gestionan los arrays?

Elige reemplazar (por defecto), concat, concat único o unión por clave para arrays de objetos.

¿Qué ocurre cuando la superposición contiene null?

Con la opción por defecto se omiten los valores null de la superposición. Con fusionar se escribe null, y con eliminar en null se quita la clave del resultado.

¿Hay soporte para fusión a tres vías?

No. Esta herramienta fusiona exactamente dos documentos JSON (base y superposición).

¿Es JSON Merge Patch (RFC 7386)?

No. La salida es un documento JSON fusionado, no un archivo de operaciones de parche RFC 7386.

Valida, formatea, compara y explora payloads JSON — complementarias a minificadores y convertidores.