Entrada (Array de objetos JSON)

Salida combinada

¿Qué es Combinar JSON?

Tienes un archivo default.json y un production.json que solo sobreescribe unas pocas configuraciones. Necesitas un único resultado combinado. Para eso es exactamente esta herramienta. Combinar JSON significa unir dos o más objetos en uno. En una combinación superficial, los objetos posteriores sobreescriben los anteriores para claves compartidas. En una combinación profunda (siguiendo patrones como Object.assign), los objetos anidados se combinan recursivamente en vez de ser reemplazados por completo.

Esta herramienta espera un array JSON de objetos. Los combina en orden usando modo superficial o profundo. El resultado es un solo objeto. El procesamiento se ejecuta en su navegador.

Cómo usar esta herramienta

1

Introducir array JSON

Pegue un array JSON de objetos, p. ej. [{"a": 1}, {"b": 2}, {"a": 3}]. El orden importa: los objetos posteriores sobrescriben los anteriores para claves en conflicto. Use Profundo o Superficial para elegir el comportamiento de combinación.

2

Revisar la salida

El panel derecho muestra el objeto combinado. En modo superficial, {"a": 1, "b": 2} combinado con {"a": 3} da {"a": 3, "b": 2}. En modo profundo, los objetos anidados se combinan recursivamente.

3

Copiar o descargar

Use Copiar o Descargar para obtener el resultado. Para formatear, use el Formateador JSON. Para validar, use el Validador JSON.

Cuándo ayuda Combinar JSON

Combinar archivos de configuración es un caso de uso común. Tiene default.json y production.json; quiere combinarlos para que production sobrescriba solo las claves que necesita. La combinación profunda combina valores predeterminados anidados recursivamente. Para respuestas de API de múltiples fuentes, o al construir objetos desde una plantilla base con sobrescrituras específicas del entorno, merge le da un solo objeto combinado. El Formateador JSON ayuda a formatear el resultado para legibilidad.

Ejemplos de Combinar JSON

Aquí hay un ejemplo de combinar dos objetos de configuración de suscriptor. Los objetos posteriores sobrescriben los anteriores para claves en conflicto.

Ejemplo: Combinar configuraciones de suscriptor

Entrada (array de objetos a combinar):

Entrada

Salida combinada:

Salida

Combinación superficial vs profunda

Combinación superficial: si ambos objetos tienen una clave, el valor del objeto posterior reemplaza completamente al anterior. Los objetos anidados no se combinan; se reemplazan. Combinación profunda: los objetos anidados se combinan recursivamente. Así {"a": {"b": 1}} combinado con {"a": {"c": 2}} da {"a": {"b": 1, "c": 2}} en modo profundo, pero {"a": {"c": 2}} en modo superficial. Object.assign de JavaScript hace una combinación superficial. Bibliotecas como Lodash merge hacen combinaciones profundas.

La especificación JSON define objetos como colecciones desordenadas de pares clave-valor. El orden de combinación importa: los valores posteriores sobrescriben los anteriores. Para respuestas de API de Postman o fetch, combinar configuraciones o combinar valores predeterminados con sobrescrituras es común. El estándar formal es RFC 8259. La guía JSON de MDN cubre el análisis y la serialización.

Preguntas frecuentes

¿Cómo combino dos objetos JSON en JavaScript?

Para una combinación superficial, usa el operador spread: {...objA, ...objB} o Object.assign({}, objA, objB). Para una combinación profunda, usa una biblioteca como Lodash _.merge(). Esta herramienta maneja ambos casos sin código.

¿Cuál es la diferencia entre combinación profunda y superficial?

En una combinación superficial, si ambos objetos tienen la misma clave, el valor del objeto posterior reemplaza al anterior completamente — incluyendo objetos anidados. En una combinación profunda, los objetos anidados se combinan recursivamente. Así {"a": {"b": 1}} combinado profundamente con {"a": {"c": 2}} da {"a": {"b": 1, "c": 2}} — ambas claves sobreviven.

¿Cómo combino archivos de configuración JSON con sobrescrituras?

Pega tus configuraciones como un array JSON con los valores predeterminados primero y las sobrescrituras al final: [defaultConfig, productionConfig]. Usa combinación profunda si tus configuraciones tienen objetos anidados.

¿Cómo se manejan los arrays dentro de objetos JSON durante la combinación?

Los arrays se reemplazan, no se concatenan. Si el objeto A tiene "items": [1, 2] y el objeto B tiene "items": [3], el resultado tiene "items": [3].

¿Se envían mis datos a un servidor?

No. La combinación se ejecuta completamente en tu navegador. Tu JSON nunca sale de tu dispositivo.

Herramientas relacionadas

Para sintaxis JSON, consulte json.org y RFC 8259. Para combinar en JavaScript, consulte MDN Object.assign y sintaxis spread. Para combinación profunda en Lodash, consulte la función merge. Para la guía JSON de MDN. Véase también jq y Postman.