Skip to content
jsonforge.app

JSON Compare

Compare dois documentos JSON e veja cada valor adicionado, removido e alterado.

Original (esquerda)

Loading editor…

Alterado (direita)

Loading editor…

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

  1. Cole o JSON original na caixa da esquerda e o JSON alterado na caixa da direita.
  2. A lista de diferenças é atualizada instantaneamente, mostrando cada valor adicionado, removido e alterado pelo seu caminho.
  3. As chaves dos objetos são comparadas independente da ordem — apenas diferenças reais de valor são relatadas.
  4. 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.

Perguntas frequentes