JSON-diff
Sammenlign to JSON-dokumenter etter struktur, ikke etter tekst.
- Kjører i nettleseren din — teksten din sendes aldri noe sted
- Ingen registrering, ingen kvoter, gratis å bruke så ofte du vil
Slik fungerer det
Å sammenligne to JSON-nyttelaster med en vanlig tekstdiff gir støy: nøkler i ny rekkefølge, annen innrykk og etterfølgende kommaer vises som endringer selv om ingenting faktisk er endret. Sammenligner du den tolkede strukturen i stedet, ser du bare det som faktisk er forskjellig.
Den sammenligner mening, ikke tegn
Begge dokumentene tolkes og sammenlignes verdi for verdi. Rekkefølgen på nøkler og blanke tegn er irrelevant, fordi objekter ikke har noen iboende rekkefølge. To dokumenter som beskriver det samme rapporteres som identiske uansett hvor ulikt de er skrevet.
Slik leser du utdataene
En linje som begynner med + finnes bare i det andre dokumentet, − bare i det første, og ~ har en annen verdi i hvert, med begge vist. Stien forteller hvor: punktum for objektnøkler og hakeparenteser for array-posisjoner, så response.items[2].price peker nøyaktig på feltet.
Arrays sammenlignes etter posisjon
Element tre sammenlignes med element tre. Det er riktig oppførsel for ordnede data og feil for et uordnet sett – en liste med de samme elementene i ny rekkefølge vises som mange endringer. Sorter begge sider først hvis rekkefølgen ikke er meningsfull i dataene dine.
Hvorfor dette kjører lokalt
API-nyttelaster inneholder rutinemessig tokens, kundeopplysninger og interne identifikatorer. Å lime inn to av dem i en ekstern sammenligningstjeneste gir fra seg alt sammen. Her tolkes og sammenlignes begge dokumentene på siden.
JSON-diff – spørsmål
Har rekkefølgen på nøklene noe å si?
Nei. Objekter har ingen iboende rekkefølge, så nøkler i ny rekkefølge rapporteres ikke som forskjeller.
Hvordan sammenlignes arrays?
Etter posisjon. En liste i ny rekkefølge vises som mange endringer, så sorter begge sider først hvis rekkefølgen ikke er meningsfull.
Hva betyr symbolene?
+ finnes bare i det andre dokumentet, − bare i det første, og ~ er forskjellig mellom dem.
Lastes dataene mine opp?
Nei. Begge dokumentene tolkes og sammenlignes i nettleseren din.