Vai al contenuto
FileTinker

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

  1. Incolla il JSON originale nel riquadro a sinistra.
  2. Incolla il JSON modificato nel riquadro a destra.
  3. 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.