JSON Diff
Incolla due documenti JSON e vedi cosa è stato aggiunto o rimosso, riga per riga. Le chiavi degli oggetti vengono prima ordinate, quindi un oggetto riordinato non viene considerato una modifica. Tutto viene eseguito nel tuo browser, perciò i tuoi dati non vengono mai caricati.
Come fare il diff di JSON
- Incolla il JSON originale nel riquadro a sinistra.
- Incolla il JSON modificato nel riquadro a destra.
- Leggi le aggiunte e le rimozioni evidenziate qui sotto.
Informazioni sul confronto di JSON
Confrontare JSON a occhio è soggetto a errori, soprattutto quando le chiavi sono riordinate o i documenti sono di grandi dimensioni. Un diff semantico normalizza entrambi i lati — ordinando le chiavi degli oggetti e preservando l'ordine degli array — poi evidenzia solo le righe che differiscono davvero, così vedi le modifiche reali invece del rumore di formattazione.
Questo è utile per esaminare risposte API, modifiche di configurazione e output di snapshot test. Tutto viene calcolato nel tuo browser, quindi i dati che confronti — che spesso contengono record reali — non lasciano mai il tuo dispositivo.
Usa il diff ogni volta che due ambienti non sono d'accordo e i file di configurazione dovrebbero essere identici: i file di configurazione di staging e produzione sono un classico. È altrettanto utile per verificare le tue modifiche: dopo aver modificato manualmente un documento lungo, un diff conferma che hai cambiato esattamente i campi che intendevi e nient'altro. E quando un aggiornamento dell'API rompe un client, confrontare le risposte di ciascuna versione individua in pochi secondi il campo rinominato o mancante.
Il comportamento che prevede l’ordinamento delle chiavi ma non degli array rispecchia la specifica JSON stessa. Un oggetto è definito come una raccolta non ordinata: due oggetti con gli stessi elementi sono considerati identici indipendentemente dall’ordine in cui un serializzatore li ha scritti. Gli array, al contrario, sono ordinati per definizione: scambiare due elementi produce un documento effettivamente diverso. Normalizzare uno e non l’altro è ciò che distingue un confronto semantico da un semplice confronto testuale.
Domande frequenti
Come confronto due file JSON?
Incolla l'originale a sinistra e la versione modificata a destra. Le righe aggiunte sono evidenziate in verde, quelle rimosse in rosso, con il conteggio di ciascuna.
L'ordine delle chiavi è importante?
No. Entrambi i lati vengono riserializzati con le chiavi ordinate prima del confronto, quindi riordinare le stesse chiavi non mostra alcuna differenza — appaiono solo le modifiche reali ai valori o alla struttura.
E se il mio JSON non è valido?
Lo strumento ti indica quale lato non è stato possibile analizzare e perché, così puoi correggerlo prima del confronto.
I miei dati vengono caricati?
No. Il confronto viene eseguito interamente nel tuo browser; nulla viene inviato a un server.
Perché valori che sembrano identici vengono visualizzati come modificati?
Di solito è una differenza di tipo. La stringa "1" e il numero 1 vengono stampati quasi allo stesso modo, ma sono valori JSON diversi; lo stesso vale per true rispetto a "true" o null rispetto a "null". Questo capita più spesso con dati esportati da fogli di calcolo o da input di form, dove tutto arriva come stringa. Il diff sta dicendo la verità: controlla le virgolette attorno al valore modificato.