JSON-differenstjek
Sammenlign to JSON-dokumenter efter struktur, ikke efter tekst: se hver tilføjet, fjernet og ændret nøgle på sin egen sti – helt i din browser.
🔒 Behandles helt i din browser - intet, du indtaster her, bliver nogensinde uploadet.
Resultat
At indsætte to JSON-dokumenter i et almindeligt tekstdifferensværktøj giver næsten altid et forkert billede: omformatering, genindrykning eller blot serialisering af objektnøgler i en anden rækkefølge vil få store strækninger af 'ændret' tekst til at lyse op, selv når de underliggende data er identiske. En tekstdifferens sammenligner tegn og linjer; den aner ikke, at {"a":1,"b":2} og {"b":2,"a":1} betyder præcis det samme.
Dette værktøj parser først begge input som JSON og gennemløber derefter rekursivt de to strukturer, sådan som dataene faktisk er formet: objekter sammenlignes efter nøglenavn, og arrays efter position (indeksbaseret array-sammenligning er et bevidst, enklere standardvalg her – der er ingen tilstand til at 'behandle dette array som et uordnet sæt identificeret ved et id-felt'). Hver forskel vises på sin egen sti, f.eks. user.address.city, og klassificeres som tilføjet, fjernet eller ændret, med den gamle og nye værdi vist sammen, så du aldrig skal gætte, hvad der skiftede.
Uændrede stier er skjult som standard, så en stor datamængde med én lille ændring ikke begraver den i støj, med en knap til at vise dem igen, når du ønsker det fulde overblik. Valgmuligheden 'sortér nøgler før sammenligning' gennemgår og viser objektnøgler i kanonisk alfabetisk rækkefølge – et JSON-objekt har i forvejen ingen meningsfuld nøglerækkefølge, så to objekter med de samme nøgler og værdier i en anden rækkefølge er de samme data, og denne mulighed gør den sammenligning, og den resulterende liste, eksplicit og deterministisk. Det er præcis den indstilling, der ligger bag forudindstillingerne for sorteret og API-svar-sammenligning på dette værktøj.
Hvis du har brug for en klassisk side-om-side linjedifferens til almindelig tekst, kode eller andet indhold, der ikke er JSON, så brug i stedet det tilhørende Tekstdifferens-værktøj – det sammenligner linje for linje og er det rigtige værktøj, når whitespace og formateringsforskelle rent faktisk betyder noget. Dette her er specifikt til JSON, og som alle værktøjer på dette websted kører det helt i din browser: intet af det, du indsætter, uploades nogensinde nogen steder.