Compara dos documentos JSON para encontrar claves agregadas, eliminadas y modificadas. Formatea ambas entradas para una comparación limpia línea por línea.
Ingresa texto en ambos campos para ver las diferencias
El diff entre el objeto original y el modificado muestra cinco cambios:
age cambio de 30 a 31email cambio de alice@example.com a alice@newdomain.comroles gano un tercer elemento: "viewer"settings.theme cambio de "dark" a "light"settings.language se agrego con el valor "en"name, settings.notifications y la estructura general permanecieron igual.
Un diff textual compara dos documentos como strings, línea por línea. Esto funciona bien cuando ambos documentos están formateados de manera consistente (misma indentación, mismo orden de claves). Si el orden de las claves difiere entre los dos documentos, un diff textual marcara cada línea como cambiada aunque los datos sean iguales.
Un diff semántico primero analiza ambos documentos, luego compara las estructuras de datos. No le importa el orden de las claves, los espacios o la indentación. Reporta los cambios en terminos de rutas y valores: age cambio de 30 a 31, no la línea 3 cambio.
Para comparar documentos JSON de diferentes fuentes (diferentes APIs, diferentes serializadores), el diff semántico es más confiable. Para rastrear cambios en un archivo JSON bajo control de versiones donde el formato es consistente, el diff textual (como se muestra aquí) funciona bien y es inmediatamente legible.
Antes de hacer diff de dos documentos JSON como texto, formatea ambos con la misma configuración. La indentación inconsistente o el orden de claves diferente producira diffs ruidosos donde cada línea parece haber cambiado.
Formatear con indentación consistente usando jq:
jq --sort-keys . original.json > original_formatted.json
jq --sort-keys . modified.json > modified_formatted.json
diff original_formatted.json modified_formatted.json
La bandera --sort-keys ordena las claves de los objetos alfabeticamente. Si ambos documentos se ordenan de la misma manera, las diferencias en el orden de las claves no apareceran en el diff.
Nothing you paste leaves this tab. Every tool runs entirely in your browser — no upload, no server, no account.