Comparación y diferencias de JSON

Compara dos documentos JSON y revisa cada valor añadido, eliminado o modificado con su ruta. El orden de las claves y el formato se ignoran.

Privacidad primero — sin subidas. El procesamiento se realiza en tu navegador.

Pega o abre dos documentos JSON y luego pulsa en Comparar JSON.

Comparar JSON online y encontrar todas las diferencias

Esta herramienta para comparar JSON toma un documento JSON original y uno modificado y muestra todas las diferencias entre ellos, una al lado de la otra: valores añadidos, valores eliminados y valores modificados, cada uno con su ruta JSON Pointer y el texto exacto del antes y el después. Es un diff estructural de JSON, no un diff de texto, por lo que reformatear, reordenar las claves de un objeto o escribir un número de forma diferente no cuenta como un cambio. Todo se ejecuta localmente en tu navegador.

Cómo comparar dos archivos JSON

Pega el primer documento en JSON Original y el segundo en JSON Modificado, o usa Abrir archivo para cargar un archivo .json local en cualquiera de los dos lados. Elige Comparar JSON. Ambos documentos se formatean y se alinean uno al lado del otro: las líneas añadidas son verdes, las eliminadas rojas y los valores cambiados ámbar, con un hueco donde el otro documento no tiene nada. El resumen cuenta las adiciones, eliminaciones y cambios; usa los botones anterior y siguiente para navegar por ellos, cada uno con su ruta de Puntero JSON, sigue editando en cualquiera de los lados y usa Copiar diferencias para copiar un informe en texto plano. Si un documento no es válido, el error indica el lado, la línea y la columna.

Reglas de comparación

Se ignoran los espacios en blanco y el orden de los miembros del objeto. El orden de los arrays importa: los elementos se comparan por su posición, por lo que insertar un elemento cerca del inicio de un array informa de que todos los elementos posteriores han cambiado. Los números se comparan por su valor exacto sin redondeo, así que 1, 1.0 y 1e0 son iguales y los enteros de más de 53 bits conservan todos los dígitos. Las cadenas y las claves se comparan después de decodificar los escapes. Un miembro ausente es diferente de nulo, y un valor cuyo tipo cambia, por ejemplo de una cadena a un número, se informa como un cambio de tipo. Los documentos con claves de objeto duplicadas no se pueden comparar porque el resultado sería ambiguo.

Casos de uso comunes

Comprueba qué ha cambiado entre dos respuestas de API, dos versiones de un archivo de configuración como package.json o tsconfig.json, un registro exportado y su copia actualizada, o un archivo de localización y su traducción. Confirma que una refactorización ha producido una salida idéntica, revisa una migración de datos o compara fixtures en las pruebas. Como la comparación es estructural, las copias minificadas y con formato embellecido de los mismos datos se comparan como iguales.

Preguntas frecuentes

¿El orden de las claves o el formato cuentan como una diferencia?

No. Los miembros del objeto se emparejan por clave sin importar su orden, y los espacios en blanco fuera de las cadenas se ignoran. Dos documentos que solo difieren en la sangría, los saltos de línea o el orden de los miembros se comparan como iguales. Los espacios en blanco dentro de los valores de cadena son parte del valor y se comparan.

¿Cómo se comparan los arrays?

Los elementos de un array se comparan por su índice. Los elementos adicionales al final de un array se informan como añadidos o eliminados. Insertar o eliminar un elemento en una posición anterior de un array desplaza los elementos siguientes, por lo que cada uno de ellos se informa como cambiado. La herramienta no intenta adivinar qué elementos se han movido.

¿Se comparan los números grandes y los decimales de forma exacta?

Sí. Los números se comparan a partir de su forma escrita en lugar de una conversión de punto flotante. 9007199254740993 y 9007199254740992 son diferentes, mientras que 1, 1.0, 1e0 y 10e-1 tienen el mismo valor. El cero negativo es igual a cero.

¿Mis datos JSON son privados?

Sí. El análisis y la comparación se ejecutan localmente en tu navegador. El JSON que pegas o abres no se sube, no se incluye en eventos de analítica ni se guarda en esta herramienta. Abrir Phoenix Code no transfiere ninguno de los dos documentos; tú mismo abres los archivos allí.

Última actualización:

Desarrolla con Phoenix Code

Un editor de código moderno con vista previa en vivo, creado para desarrolladores y diseñadores web.

Prueba Phoenix Code Gratis