Sări la conținut
TextArray
Complet local

Diferența JSON

Comparați două documente JSON structural și vedeți fiecare valoare adăugată, eliminată și schimbată după calea sa.

Intrare
JSON schimbat
Ieșire

Diferența JSON

Lipiți JSON original în primul câmp și versiunea schimbată în al doilea, iar instrumentul raportează fiecare diferență după calea sa: + user.roles[2] = „admin” pentru o valoare adăugată, − user.legacyId pentru una eliminată, ~ user.name: „Anna” → „Eva” pentru o modificare. Comparația este structurală, nu textuală - ambele documente sunt analizate și valorile lor sunt comparate recursiv, astfel încât reformatarea, indentarea și ordinea cheilor obiectelor nu sunt niciodată considerate diferențe. Exact asta greșește o diferență de text simplu despre JSON.

Atingeți-l atunci când două răspunsuri API ar trebui să se potrivească, dar nu: punerea în scenă față de producție, sarcina utilă de ieri față de cea de astăzi, răspunsul înainte și după o implementare. Este la fel de util pentru deviația de configurare - două fișiere de configurare exportate care s-au separat de-a lungul timpului - și pentru starea serializată de depanare, unde un singur steag schimbat se ascunde în kiloocteți de obiecte imbricate.

Elementele matricei sunt comparate prin index, astfel încât o listă deplasată apare ca o serie de modificări. Când ordinea cu adevărat nu contează - etichete, liste de permisiuni - activați „Ignorați ordinea matricei” și matricele sunt potrivite ca mai multe seturi: sunt raportate doar elementele adăugate sau eliminate cu adevărat. „Afișați valorile nemodificate” listează în plus fiecare cale neschimbată, ceea ce transformă rezultatul într-un inventar complet adnotat al documentului.

Ambele documente sunt analizate și comparate în întregime în browser. Nimic nu este încărcat, așa că încărcăturile utile de producție, jetoanele și datele clienților din JSON rămân pe dispozitiv.

FAQ

Cum este diferit de un text diferit?
O diferență de text compară liniile, astfel încât cheile de reformatare sau reordonate arată ca modificări. Acest instrument analizează ambele documente și compară valorile structural - sunt raportate doar diferențele reale ale datelor.
Contează ordinea cheilor obiectelor?
Nu. {"a":1,"b":2} și {"b":2,"a":1} sunt identice. Obiectele sunt comparate după cheie, nu după poziție.
Cum se compară matricele?
După index: al treilea element al originalului este comparat cu al treilea element al documentului modificat. Activați „Ignorați ordinea matricei” pentru a potrivi matricele ca seturi multiple, astfel încât reordonarea nu este raportată ca diferență.
Ce înseamnă căile din ieșire?
Punctele coboară în obiecte și paranteze în matrice — user.roles[2] este al treilea element al matricei roles din interiorul utilizatorului. Cheile care nu sunt identificatori simpli sunt citate între paranteze.
JSON-ul meu este încărcat de undeva?
Nu. Ambele documente sunt analizate și comparate în întregime în browser și nu părăsesc niciodată dispozitivul.