Un comparador de diferencias JSON rápido y privado
Al trabajar con estructuras de datos complejas, encontrar un solo valor modificado o una clave faltante puede ser increíblemente frustrante. Esta herramienta para comparar JSON está diseñada para analizar y resaltar al instante las diferencias exactas entre dos fragmentos de JSON. En lugar de leer miles de líneas de código, obtienes un informe limpio y estructurado exactamente con lo que cambió.
Como esta herramienta se ejecuta completamente en tu navegador web, es una forma totalmente privada de comparar JSON online. Tus datos nunca se suben a un servidor ni se almacenan en una base de datos. Puedes pegar de forma segura respuestas de API privadas, datos de clientes o configuraciones de entornos sensibles sin riesgo de filtración de datos.
Cómo funciona la comparación profunda de JSON
Si quieres comparar dos archivos JSON, usar un comparador de diferencias de texto plano estándar suele generar falsos positivos. Las herramientas de texto plano comparan los datos línea por línea. Si tu JSON modificado tiene una indentación diferente, o si las claves de un objeto simplemente están en otro orden, la comparación de texto marcará todo el bloque como modificado.
Esta herramienta funciona de manera diferente. Analiza el texto y lo convierte en objetos JavaScript reales, y realiza una comparación profunda y recursiva de la propia estructura de datos. Ignora los espacios en blanco, la indentación y el orden de las claves de los objetos. Si {"status": "ok", "code": 200} pasa a ser {"code": 200, "status": "ok"}, la herramienta los reconoce como perfectamente idénticos.
Cuando encuentra una diferencia, genera una ruta precisa hacia el cambio utilizando la notación de puntos y la sintaxis de corchetes estándar. Por ejemplo, si cambia la tercera etiqueta de un array, la herramienta te dirigirá directamente a tags[2] en lugar de simplemente resaltar una línea al azar en un archivo enorme.
Manejo de arrays: estricto vs. independiente del orden
Uno de los retos más comunes en un comparador de JSON es el manejo de arrays. A veces, el orden de los elementos en un array es estrictamente relevante. Otras veces, un array es solo una lista desordenada de elementos y solo importa que el contenido coincida.
Por defecto, esta herramienta compara los arrays estrictamente por índice. Comprueba si el primer elemento del original coincide con el primer elemento del modificado, y así sucesivamente.
Si marcas la opción Ignorar orden de los arrays, la herramienta cambia su comportamiento. Serializa y ordena alfabéticamente el contenido de ambos arrays antes de compararlos. Esto significa que si tu array original es ["apple", "banana"] y tu array modificado es ["banana", "apple"], la herramienta reportará cero cambios. Esta función es invaluable al comparar respuestas de API de bases de datos que no garantizan un orden específico.
Casos de uso comunes
Depuración de respuestas de API. Cuando un endpoint de una API falla de repente, comparar la respuesta antigua que funcionaba con la nueva que falla es la forma más rápida de encontrar la causa del error. Pega ambos payloads para ver al instante si se renombró una clave, si un tipo de dato cambió de string a entero o si se eliminó un objeto anidado.
Revisión de archivos de configuración. Las aplicaciones modernas dependen en gran medida de archivos de configuración JSON, como package.json, tsconfig.json o plantillas de despliegue en la nube. Antes de hacer un commit de un cambio, usa esta herramienta para verificar exactamente qué dependencias se actualizaron o qué ajustes se modificaron.
Auditoría de registros de bases de datos. Las bases de datos documentales como MongoDB almacenan los registros como estructuras similares a JSON. Si necesitas auditar cómo ha cambiado un perfil de usuario o documento específico con el tiempo, comparar la exportación histórica del JSON con el estado actual proporciona un historial de auditoría claro de los campos añadidos, eliminados y modificados.
Entender el resultado
Una vez que pegues un JSON válido en ambos paneles, la herramienta genera un resumen y una lista detallada de los cambios:
- Añadido (+): Claves o elementos de un array que existen en el JSON modificado pero no en el original. Se resaltan en verde.
- Eliminado (−): Claves o elementos de un array que existen en el JSON original pero faltan en la versión modificada. Se resaltan en rojo.
- Modificado (~): Claves que existen en ambos, pero tienen valores diferentes (por ejemplo, se actualizó una cadena de texto o un booleano cambió de
trueafalse). Se resaltan en amarillo, mostrando tanto el valor antiguo como el nuevo.
Si necesitas compartir los resultados de la comparación con un colega o pegarlos en un reporte de errores, puedes usar el botón Copiar. Esto copia un resumen limpio en texto plano de cada ruta modificada y sus valores asociados.
Para seguir manipulando datos, es posible que primero quieras dar formato a un código desordenado usando el Formateador JSON, o una vez que hayas definido tu estructura JSON, generar definiciones de tipos con el convertidor de JSON a TypeScript.