Ir al contenido principal
Bethemesh

Comparador JSON

Compara dos documentos JSON y detecta sus diferencias estructurales. El procesamiento permanece local en tu navegador.

  • Portapapeles
  • Exportar

Integrar este widget

Personaliza el aspecto, comprueba la vista previa y copia el código.

Vista previa

Tipo de código de integración

Código para copiar

Se adapta a tu página y Bethemesh ajusta su tamaño automáticamente.

¿Te ha resultado útil esta herramienta?

¿Cómo funciona esta herramienta?

Compara dos documentos JSON tras normalizar la presentación y el orden de propiedades. Una respuesta API en una línea puede equivaler a la misma respuesta con otra sangría. Se conservan tipos y orden de arrays: "1" no es el número 1 y una lista reordenada es diferente. Ambas fuentes permanecen en el navegador. La salida es un informe textual, no un documento JSON nuevo ni un parche aplicable automáticamente.

Ambas entradas deben respetar la sintaxis JSON. El motor analiza valores, ordena recursivamente claves de objetos y serializa con un formato común. Los espacios de presentación y el orden escrito de propiedades dejan de producir diferencias artificiales. Los espacios dentro de cadenas siguen siendo significativos.

No se ordenan arrays ni se emparejan sus objetos por identificador. Mover una entrada sigue siendo una diferencia. Se comparan cadenas, números, booleanos y null como valores analizados. Una clave ausente no equivale a null. Si hay nombres repetidos, la lectura JSON conserva la última aparición; evita esta representación ambigua.

Si las formas normalizadas difieren, se compara cada línea con la misma posición de la otra fuente. - identifica la primera y + la segunda; las líneas comunes llevan espacios iniciales. Una inserción puede desplazar varias líneas y producir un informe mayor que el cambio lógico mínimo. No es un diff semántico por rutas ni JSON Patch.

Se rechazan enteros fuera del rango seguro de JavaScript y números no finitos para evitar declarar equivalentes identificadores distintos tras redondearlos. Los decimales mantienen los límites del navegador. Usa cadenas contractuales para identificadores largos y comparación de texto para escrituras exactas.

Cómo utilizar esta herramienta

  1. Añade ambas versiones

    Pega o importa cada documento por separado. Coloca primero la referencia para leer - como valores antiguos y + como nuevos.

  2. Ejecuta la comparación normalizada

    Lee el mensaje de equivalencia o el informe. El rechazo numérico indica un límite de representación, no una diferencia calculada.

  3. Revisa el contexto y exporta

    Comprueba líneas vecinas antes de concluir que hay varios cambios independientes. Copia o descarga el informe .txt. Editar una fuente oculta la salida anterior.

Casos de uso

Comparar respuestas API

Descarta diferencias de presentación para examinar valores. Mantén el orden cuando las posiciones del array formen parte del contrato.

Revisar configuración JSON

Compara referencia y versión editada sin confundir sangría y datos. No se aceptan comentarios JSON5.

Detectar una conversión de tipo

Localiza números convertidos en cadenas o booleanos sustituidos por texto aunque su aspecto sea parecido.

Ejemplos

Ignorar el orden de propiedades

Los objetos tienen las mismas claves y valores. El orden diferente no produce cambios estructurales después de normalizar.

Entrada

{"b":2,"a":1}
{"a":1,"b":2}

Resultado

Los documentos JSON son equivalentes.

Distinguir número y cadena

La línea retirada contiene un número y la añadida una cadena. Las comillas indican un cambio real de tipo.

Entrada

{"id":1}
{"id":"1"}

Resultado

  {
-   "id": 1
+   "id": "1"
  }

Consejos y buenas prácticas

  • Quita campos volátiles solo si el objetivo lo justifica: las fechas no se ignoran automáticamente.
  • Un informe grande puede deberse a líneas desplazadas. Busca primero el punto inicial de divergencia.
  • Usa el comparador de hojas para emparejar filas por clave en lugar de posición.
  • Dos documentos equivalentes pueden incumplir el mismo contrato API. Comprueba el esquema aparte.

Fuentes y referencias

Preguntas frecuentes

¿Por qué son equivalentes archivos presentados de otra forma?

Se comparan valores tras ordenar propiedades y aplicar una presentación común. Los espacios externos y el orden de claves no cambian un objeto.

¿Se comparan arrays ignorando el orden?

No. La posición sigue siendo significativa. El motor no busca campos id ni empareja automáticamente objetos movidos.

¿Puedo aplicar el informe como JSON Patch?

No. Los signos - y + describen un informe textual sobre documentos normalizados. No incluye operaciones ni rutas JSON Patch.

¿Por qué se rechazan algunos números grandes?

JavaScript podría redondear enteros distintos al mismo valor. El rechazo impide esa falsa equivalencia. Usa cadenas para identificadores cuando el contrato lo permita.

Herramientas relacionadas

Herramientas similares o complementarias a esta.

Herramientas similares

Formatea, minimiza y valida un documento JSON para hacerlo más legible o compacto.

DesarrolloDestacadaUsar esta herramienta

Valida un documento JSON con un esquema y localiza cada error con precisión.

DesarrolloDestacadaUsar esta herramienta