Comparador JSON
Veja o que realmente mudou entre dois documentos · roda nesta aba, nunca é enviado a lugar nenhum
JSON 1
JSON 2
Cole um documento de cada lado — ou aperte Exemplo para testar com um par que difere de algumas formas interessantes. Os dois lados continuam editáveis, e as setas do meio copiam um bloco nos dois sentidos.
Como funciona o Comparador JSON
Um comparador JSON em que você pode editar. Os dois documentos ficam lado a lado como editores vivos com a diferença desenhada entre eles: vermelho marca o que só o JSON 1 tem, verde o que só o JSON 2 tem, e as setas do meio copiam um bloco nos dois sentidos, então você reconcilia o par enquanto lê. Nenhum dos lados é a referência. E como o veredicto é estrutural e não textual, chaves reordenadas e indentação diferente nunca contam como mudanças.
Cole um documento de cada lado. A comparação é estrutural, não textual: os dois documentos são analisados primeiro, então chaves reordenadas, indentação diferente e espaços no fim da linha nunca contam como mudanças.
Elementos de array são pareados por identidade quando existe uma — um campo id, key, uuid ou name — de modo que inserir um elemento no começo relata uma única adição em vez de reescrever tudo que vem depois.
Sequências longas de linhas idênticas são recolhidas, deixando as mudanças com estrutura suficiente ao redor para localizar cada uma. Alt + ↑ e Alt + ↓ percorrem as diferenças.
Perguntas frequentes
Qual a diferença entre um diff de JSON e um diff de texto?
Um diff de texto compara caracteres, então reformatar um arquivo ou reordenar as chaves aparece como centenas de mudanças. Esta ferramenta analisa os dois documentos primeiro e compara valores, então só são relatadas as diferenças que mudam o que o JSON significa.
Como os arrays são comparados?
Os elementos são pareados por identidade quando existe uma — um campo id, key, uuid ou name. Por isso inserir um elemento no começo relata uma única adição em vez de reescrever todos os elementos seguintes, e elementos que apenas se moveram são relatados como movimentos.
A ordem das chaves ou a formatação afetam o resultado?
Não. Ordem das chaves, indentação e espaços no fim da linha são ignorados. Dois documentos que só diferem na formatação são comparados como idênticos.
Os dois documentos são enviados para algum lugar?
Não. Ambos são analisados e comparados em um Web Worker dentro desta aba. Nada é enviado a um servidor, o que importa quando você está comparando dois payloads de produção.