0

JSON Diff alat

Usporedite dva JSON sadržaja po strukturi, a ne po tekstu: svaki dodani, uklonjeni i promijenjeni ključ vidite na njegovoj vlastitoj putanji, u potpunosti u vašem pregledniku.

🔒 U potpunosti se obrađuje u vašem pregledniku — ništa što ovdje unesete nikada se ne učitava.

Obrada... 0%

Rezultat

Lijepljenje dvaju JSON dokumenata u običan alat za tekstualni diff gotovo uvijek daje pogrešnu sliku: ponovno formatiranje, ponovno uvlačenje ili jednostavno serijaliziranje ključeva objekta različitim redoslijedom osvijetlit će goleme dijelove 'promijenjenog' teksta čak i kad su podaci u osnovi identični. Tekstualni diff uspoređuje znakove i retke; nema pojma da {"a":1,"b":2} i {"b":2,"a":1} znače potpuno istu stvar.

Ovaj alat prvo parsira oba unosa kao JSON, a zatim rekurzivno prolazi kroz dvije strukture onako kako su podaci stvarno oblikovani: objekti se uspoređuju prema nazivu ključa, a polja prema poziciji (usporedba polja temeljena na indeksu ovdje je namjerno jednostavnija zadana opcija — ne postoji način 'tretiraj ovo polje kao neuređeni skup s identifikacijom prema polju id'). Svaka razlika prijavljuje se na vlastitoj putanji, primjerice korisnik.adresa.grad, i klasificira se kao dodana, uklonjena ili promijenjena, a stara i nova vrijednost prikazuju se zajedno tako da nikad ne morate pogađati što se preokrenulo.

Nepromijenjene putanje su po zadanom skrivene tako da ih veliki sadržaj s jednom malom izmjenom ne zatrpa šumom, uz preklopnik za njihovo ponovno prikazivanje kad želite potpunu sliku. Opcija 'sortiraj ključeve prije usporedbe' prolazi kroz objekt i ispisuje ključeve kanonskim abecednim redoslijedom — JSON objekt ionako nema smisleni redoslijed ključeva, pa su dva objekta s istim ključevima i vrijednostima u različitom slijedu isti podaci, a ova opcija čini tu usporedbu, kao i rezultirajuću listu, eksplicitnom i determinističkom. To je upravo postavka iza predpostavki za sortiranje i za usporedbu API odgovora na ovom alatu.

Ako trebate klasičan usporedni linijski diff za običan tekst, kod ili bilo koji sadržaj koji nije JSON, umjesto toga koristite popratni alat Text Diff — on uspoređuje redak po redak i pravi je alat kad praznine i razlike u formatiranju doista imaju značaja. Ovaj je namijenjen isključivo JSON-u i, kao i svaki alat na ovom sajtu, u cijelosti se izvršava u vašem pregledniku: ništa od onoga što zalijepite nikad se nigdje ne učitava.