Comparar respostas API
Exclua diferenças de apresentação para analisar valores alterados. Mantenha a ordem quando as posições do array fizerem parte do contrato.
Compare dois documentos JSON e identifique as diferenças estruturais. O processamento permanece local no navegador.
Compare dois documentos JSON após normalizar apresentação e ordem de propriedades. Uma resposta API numa linha pode equivaler à mesma resposta com outra indentação. Tipos e ordem de arrays continuam relevantes: "1" não é o número 1 e uma lista reordenada é diferente. As duas fontes ficam no navegador. A saída é um relatório textual, não um novo documento JSON nem uma correção aplicável automaticamente.
As duas entradas devem respeitar a sintaxe JSON. O motor analisa valores, ordena recursivamente chaves de objetos e serializa com apresentação comum. Espaços de apresentação e ordem escrita das propriedades deixam de criar diferenças artificiais. Espaços dentro de strings continuam significativos.
Arrays não são ordenados e os objetos não são associados por identificador. Mover uma entrada continua a ser uma diferença. Strings, números, booleanos e null são comparados como valores analisados. Uma chave ausente difere de null. Nomes duplicados seguem a leitura JSON, mantendo a última ocorrência; evite essa representação ambígua.
Se as formas normalizadas diferirem, compara-se cada linha com a mesma posição da outra fonte. - identifica a primeira entrada e + a segunda; linhas comuns começam com espaços. Uma inserção pode deslocar várias linhas e produzir um relatório maior que a alteração lógica mínima. Não é um diff semântico por caminhos nem JSON Patch.
Inteiros fora do intervalo seguro JavaScript e números não finitos são rejeitados para impedir falsas equivalências após arredondamento. Os decimais mantêm os limites de precisão do navegador. Use strings contratuais para identificadores longos e comparação textual para as escritas exatas.
Cole ou importe cada documento separadamente. Coloque primeiro a referência para ler - como valor antigo e + como novo.
Leia a equivalência ou o relatório. A rejeição numérica indica um limite de representação, não uma diferença calculada entre valores.
Verifique linhas vizinhas antes de assumir alterações independentes. Copie ou descarregue o relatório .txt. Alterar uma fonte oculta a saída anterior.
Exclua diferenças de apresentação para analisar valores alterados. Mantenha a ordem quando as posições do array fizerem parte do contrato.
Compare referência e versão editada sem confundir indentação e dados. Comentários JSON5 não são suportados.
Identifique números convertidos em strings ou booleanos substituídos por texto mesmo quando o aspeto é semelhante.
Os objetos têm chaves e valores iguais. A ordem diferente não introduz alterações estruturais após normalização.
Entrada
{"b":2,"a":1}
{"a":1,"b":2}Resultado
Os documentos JSON são equivalentes.A linha removida contém um número e a adicionada uma string. As aspas indicam uma mudança real de tipo.
Entrada
{"id":1}
{"id":"1"}Resultado
{
- "id": 1
+ "id": "1"
}Comparam-se valores após ordenar propriedades e aplicar apresentação comum. Espaços externos e ordem das chaves não mudam um objeto.
Não. A posição mantém-se significativa. O motor não procura campos id nem associa automaticamente objetos deslocados.
Não. Os sinais - e + descrevem um relatório textual sobre documentos normalizados. Não contém operações nem caminhos JSON Patch.
JavaScript poderia arredondar inteiros distintos para o mesmo valor. A rejeição impede essa falsa equivalência. Use strings para identificadores quando o contrato o permitir.
Ferramentas relacionadas
Ferramentas semelhantes ou complementares a esta.
Formate, minifique e valide um documento JSON para o tornar mais legível ou compacto.
Valide um documento JSON com um esquema e localize precisamente cada erro.
Compare dois ficheiros Excel ou CSV a partir de uma coluna-chave e identifique as diferenças.