Saltar al contenido
FileTinker

JSON Diff

Pega dos documentos JSON y descubre qué se ha añadido o eliminado, línea por línea. Las claves de los objetos se ordenan primero, así que un objeto reordenado no cuenta como un cambio. Todo se ejecuta en tu navegador, por lo que tus datos nunca se suben.

Cómo comparar JSON

  1. Pega el JSON original en el cuadro de la izquierda.
  2. Pega el JSON modificado en el cuadro de la derecha.
  3. Lee las adiciones y eliminaciones resaltadas más abajo.

Sobre la comparación de JSON

Comparar JSON a simple vista es propenso a errores, sobre todo cuando las claves están reordenadas o los documentos son grandes. Un diff semántico normaliza ambos lados —ordenando las claves de los objetos y conservando el orden de los arrays— y luego resalta solo las líneas que difieren de verdad, para que veas los cambios reales en lugar del ruido del formato.

Esto resulta útil para revisar respuestas de API, cambios de configuración y la salida de tests de snapshot. Todo se calcula en tu navegador, así que los datos que comparas —que a menudo contienen registros reales— nunca salen de tu dispositivo.

Utilice la función de comparación de archivos (diff) siempre que detecte discrepancias entre dos entornos y se supone que las configuraciones son idénticas; un ejemplo clásico son los archivos de configuración de los entornos de prueba y producción. También es muy útil para verificar sus propias modificaciones: después de realizar ajustes manuales en un documento extenso, la comparación de archivos confirma que ha modificado exactamente los campos que pretendía y nada más. Y cuando una actualización de una API causa problemas en un cliente, comparar las respuestas de cada versión le permite identificar en cuestión de segundos el campo que ha cambiado de nombre o que falta.

El comportamiento que consiste en ordenar las claves pero no los arrays refleja la propia especificación JSON. Se define un objeto como una colección no ordenada; dos objetos con los mismos miembros tienen el mismo valor, independientemente del orden en que un serializador los haya escrito. Por el contrario, los arrays están ordenados por definición: intercambiar dos elementos produce un documento genuinamente diferente. Normalizar uno y no el otro es lo que diferencia una comparación semántica de una simple comparación de texto.

Preguntas frecuentes

¿Cómo comparo dos archivos JSON?

Pega el original a la izquierda y la versión modificada a la derecha. Las líneas añadidas se resaltan en verde, las eliminadas en rojo, con un recuento de cada una.

¿Importa el orden de las claves?

No. Ambos lados se reserializan con las claves ordenadas antes de comparar, así que reordenar las mismas claves no muestra ninguna diferencia: solo aparecen los cambios reales de valor o estructura.

¿Y si mi JSON no es válido?

La herramienta te indica qué lado no se pudo analizar y por qué, para que puedas corregirlo antes de comparar.

¿Se suben mis datos?

No. La comparación se ejecuta por completo en tu navegador; no se envía nada a ningún servidor.

¿Por qué los valores que parecen idénticos se muestran como si hubieran cambiado?

Suele tratarse de una diferencia de tipo. La cadena "1" y el número 1 se imprimen casi igual, pero son valores JSON distintos; lo mismo ocurre con true frente a "true" o null frente a "null". Esto suele causar problemas con datos exportados desde hojas de cálculo o introducidos en formularios, donde todo llega como cadena. El diff está diciendo la verdad: revisa las comillas alrededor del valor modificado.