JSON Compare
Compare dois documentos JSON e veja cada valor adicionado, removido e alterado.
Original (esquerda)
Alterado (direita)
Diferenças
Digite JSON dos dois lados para compará-los.
O que é JSON Compare?
O JSON Compare é uma ferramenta de diff estrutural que recebe dois documentos JSON e relata exatamente quais valores foram adicionados, removidos ou alterados, cada um identificado pelo seu caminho (por exemplo items[2].name). Ele interpreta as duas entradas e compara os valores resultantes, de modo que espaços em branco e a ordem das chaves são ignorados e apenas as diferenças reais de chaves e valores aparecem. Arrays são comparados posicionalmente por índice, o que significa que inserir um elemento no meio mostra todos os elementos seguintes como alterados, em vez de uma única inserção. A comparação roda no seu navegador, sem nenhuma etapa no servidor.
Como usar JSON Compare
- Cole o JSON original na caixa da esquerda e o JSON alterado na caixa da direita.
- A lista de diferenças é atualizada instantaneamente, mostrando cada valor adicionado, removido e alterado pelo seu caminho.
- As chaves dos objetos são comparadas independente da ordem — apenas diferenças reais de valor são relatadas.
- Os elementos de arrays são comparados por índice; elementos extras no final de qualquer lado aparecem como adicionados ou removidos.
Exemplos
Valor alterado
Entrada
Left: {"a":1} Right: {"a":2}
Saída
a: changed 1 → 2
Chave adicionada
Entrada
Left: {"a":1} Right: {"a":1,"b":2}
Saída
b: added (2)
Caminho aninhado
Entrada
Left: {"user":{"name":"Ada"}} Right: {"user":{"name":"Grace"}}
Saída
user.name: changed "Ada" → "Grace"
Erros comuns
- Assumir que isto faz um diff "inteligente" baseado em linhas como um diff de texto/git — é um diff estrutural de JSON, então reordenar elementos de um array aparece como alterações mesmo que os mesmos valores continuem presentes.
- Comparar JSON minificado com JSON formatado esperando que o espaço em branco importe — apenas os valores interpretados são comparados, não a formatação.
- Esquecer que JSON não tem "undefined" — uma chave genuinamente ausente aparece como adicionada/removida, enquanto uma chave explicitamente definida como null é um valor real e aparecerá como alterada se o outro lado divergir.
Por que usar esta ferramenta
- A saída de diff baseada em caminhos diz exatamente onde está a diferença, não apenas que os documentos divergem.
- Ignora a ordem das chaves, focando apenas em diferenças estruturais e de valores reais.
- Mensagens de erro claras e separadas quando qualquer um dos lados falha ao ser interpretado, em vez de uma falha genérica única.
- Roda no seu navegador, sem nenhuma etapa no servidor.