Combinar JSON
Combinar varios objetos JSON en uno
Entrada (Array de objetos JSON)
Salida combinada
¿Qué es Combinar JSON?
Combinar JSON significa unir dos o más objetos en uno. En una combinación superficial, los objetos posteriores sobrescriben los anteriores para las claves que existen en ambos. En una combinación profunda, los objetos anidados se combinan recursivamente en lugar de ser reemplazados. Esto es útil al combinar archivos de configuración, unir respuestas de API o construir objetos a partir de valores predeterminados y sobrescrituras.
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
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.
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.
Copiar o descargar
Use <strong>Copiar</strong> o <strong>Descargar</strong> 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 <code>default.json</code> y <code>production.json</code>; 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):
Salida combinada:
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
¿Qué pasa si tengo dos objetos separados, no un array?
Envuelva en un array: [{"a": 1}, {"b": 2}]. La herramienta espera un array de objetos.
¿Cómo se manejan los arrays?
En la mayoría de implementaciones de merge, los arrays se reemplazan, no se concatenan. Si el objeto A tiene "items": [1, 2] y el objeto B tiene "items": [3], el resultado típicamente tiene "items": [3]. Compruebe la salida de la herramienta para confirmar.
¿Se envían mis datos a algún lugar?
No. La combinación se ejecuta en su navegador.
¿Puedo combinar archivos de configuración?
Sí. Pegue cada configuración como objeto en el array, con valores predeterminados primero y sobrescrituras al final. La combinación profunda suele ser mejor para estructuras de configuración anidadas.
¿Qué pasa con las claves duplicadas en el mismo objeto?
Los objetos JSON no pueden tener claves duplicadas. Si las tiene, el analizador solo conservará una. Valide primero con el Validador JSON.
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.