Comparação e Diferenças de JSON

Compare dois documentos JSON e analise cada valor adicionado, removido ou alterado com seu caminho. A ordem das chaves e a formatação são ignoradas.

Privacidade em primeiro lugar — sem envios. O processamento permanece no seu navegador.

Cole ou abra dois documentos JSON e, em seguida, clique em Comparar JSON.

Compare JSON Online e Encontre Todas as Diferenças

Esta ferramenta de comparação de JSON recebe um documento JSON original e um alterado e mostra todas as diferenças entre eles, lado a lado: valores que foram adicionados, removidos e alterados, cada um com seu caminho JSON Pointer e o texto exato de antes e depois. É um diff estrutural de JSON, não um diff de texto, portanto, reformatação, reordenação de chaves de objeto ou a escrita de um número de forma diferente não contam como uma alteração. Tudo é executado localmente no seu navegador.

Como Comparar Dois Arquivos JSON

Cole o primeiro documento em JSON Original e o segundo em JSON Alterado, ou use Abrir arquivo para carregar um arquivo .json local em qualquer um dos lados. Escolha Comparar JSON. Ambos os documentos são formatados e alinhados lado a lado: linhas adicionadas são verdes, linhas removidas são vermelhas e valores alterados são âmbar, com um espaço onde o outro documento não tem nada. O resumo conta as adições, remoções e alterações; use os botões anterior e próximo para navegar por elas, cada uma com seu caminho JSON Pointer, continue editando qualquer um dos lados e use Copiar diferenças para copiar um relatório em texto simples. Se um documento for inválido, o erro informa o lado, a linha e a coluna.

Regras de Comparação

Espaços em branco e a ordem dos membros do objeto são ignorados. A ordem do array importa: os elementos são comparados por posição, portanto, inserir um elemento perto do início de um array relata cada elemento posterior como alterado. Números são comparados por seu valor exato, sem arredondamento, então 1, 1.0 e 1e0 são iguais e inteiros com mais de 53 bits mantêm todos os dígitos. Strings e chaves são comparadas após a decodificação de escapes. Um membro ausente é diferente de null, e um valor cujo tipo muda, por exemplo, de uma string para um número, é relatado como uma mudança de tipo. Documentos com chaves de objeto duplicadas não podem ser comparados porque o resultado seria ambíguo.

Casos de Uso Comuns

Verifique o que mudou entre duas respostas de API, duas versões de um arquivo de configuração como package.json ou tsconfig.json, um registro exportado e sua cópia atualizada, ou um arquivo de localização e sua tradução. Confirme que uma refatoração produziu uma saída idêntica, revise uma migração de dados ou compare 'fixtures' em testes. Como a comparação é estrutural, cópias minificadas e formatadas dos mesmos dados são comparadas como iguais.

Perguntas Frequentes

A ordem das chaves ou a formatação contam como uma diferença?

Não. Os membros do objeto são correspondidos pela chave, independentemente de sua ordem, e espaços em branco fora das strings são ignorados. Dois documentos que diferem apenas em indentação, quebras de linha ou ordem dos membros são comparados como iguais. Espaços em branco dentro dos valores de string fazem parte do valor e são comparados.

Como os arrays são comparados?

Os elementos do array são comparados por índice. Elementos extras no final de um array são relatados como adicionados ou removidos. Inserir ou excluir um elemento no início de um array desloca os elementos seguintes, portanto, cada um deles é relatado como alterado. A ferramenta não tenta adivinhar quais elementos se moveram.

Números grandes e decimais são comparados exatamente?

Sim. Os números são comparados a partir de sua forma escrita, em vez de uma conversão de ponto flutuante. 9007199254740993 e 9007199254740992 são diferentes, enquanto 1, 1.0, 1e0 e 10e-1 são o mesmo valor. Zero negativo é igual a zero.

Meus dados JSON são privados?

Sim. A análise e a comparação são executadas localmente no seu navegador. O JSON que você cola ou abre não é enviado, incluído em eventos de analytics ou salvo por esta ferramenta. Abrir o Phoenix Code não transfere nenhum dos documentos; você mesmo abre seus arquivos lá.

Última atualização:

Construa com o Phoenix Code

Um editor de código moderno com visualização ao vivo, desenvolvido para desenvolvedores web e designers.

Experimente o Phoenix Code Gratuitamente