Nouplo

Confronto JSON

Quel che è cambiato davvero, come percorso.

Gli esempi sostituiscono temporaneamente i dati e le impostazioni. Puoi ripristinare il lavoro precedente.

0 caratteri
Risultato
Metti i due documenti uno dopo l’altro, separati da una riga con ---.

I tuoi file restano sul tuo dispositivo

Questo strumento viene eseguito interamente nel tuo browser. Ciò che incolli viene elaborato sul tuo dispositivo e non viene mai inviato a un server, quindi puoi usarlo in sicurezza con token, chiavi e testi non pubblicati.

Esempio

Esempio: due esportazioni del listino di un negozio online, abbinate per sku

Il gestionale della Bottega Esempio esporta il listino in JSON. Si confronta l’esportazione del 30 settembre (formattata su più righe) con quella del 15 ottobre (tutta su una riga, chiavi in un altro ordine, prodotti riordinati). Nel campo: il primo JSON, una riga di ---, il secondo.

  1. Senza campo di abbinamento gli elenchi si confrontano per posizione: Paccheri e Olio si sono scambiati di posto, e risultano 9 differenze, con sku, nomi e prezzi «cambiati» in prodotti[0] e [1].
  2. Scrivi sku in «Abbina gli elementi dell’elenco con questo campo»: ogni prodotto viene seguito per codice e le differenze scendono a 6.
  3. L’a capo, gli spazi e il diverso ordine delle chiavi non contano: negozio ha lo stesso valore e non compare nel rapporto.
Segno Percorso Che cosa è cambiato
~ aggiornato"2026-09-30" → "2026-10-15"
→ prodotti[sku="OLIO-075"]spostato dalla posizione 0 alla 1
~ prodotti[sku="OLIO-075"].prezzo12.9 → 13.9
→ prodotti[sku="PASTA-500"]spostato dalla posizione 1 alla 0
~ prodotti[sku="MIELE-250"].disponibiletrue → false
+ prodotti[sku="SUGO-350"]nuovo prodotto: {sku, nome, prezzo, …}

6 differenze invece di 9: un prezzo aumentato (olio da 12.9 a 13.9), un prodotto non più disponibile, uno nuovo e due spostamenti che non cambiano nulla. Il rapporto si copia così com’è in un ticket o in una mail a chi gestisce il sito.

Come funziona

  1. Incolla il primo documento, una riga di ---, poi il secondo.
  2. Se entrambi contengono un elenco con chiave, indica il campo: gli elementi solo spostati vengono segnalati come spostati e non come riscritti.
  3. Leggi i percorsi. + aggiunto, - rimosso, ~ modificato, → spostato.
  4. Copia il rapporto se deve finire in un ticket.

Domande frequenti

Perché non un diff testuale?
Perché un diff testuale su JSON è quasi inutile. Riformatta un file, o lascia che un server restituisca le chiavi in un altro ordine, e tutte le righe risultano modificate mentre nulla lo è. Qui i due valori vengono percorsi insieme: la risposta è users[2].email, non «riga 47».
Come vengono confrontati gli array?
Per posizione, che è l’impostazione onesta: abbinarli per contenuto richiede una chiave che nessuno ci ha detto, e indovinarla produce sciocchezze dette con sicurezza. Se il tuo elenco ha un id, indicalo e il confronto segue gli elementi invece delle loro posizioni.
L’ordine delle chiavi conta come differenza?
No. {a:1,b:2} e {b:2,a:1} sono gli stessi dati e vengono riportati come identici.
Come confronto due elenchi in ordine diverso?
Indica il campo che identifica ogni elemento, come id o sku: gli elementi vengono abbinati per quel valore, quelli spostati segnalati con → e le modifiche cercate dentro ciascuno. Serve che ogni elemento di entrambi gli elenchi abbia quel campo con un valore diverso; altrimenti il confronto resta per posizione.
Un numero tra virgolette conta come diverso?
Sì: "13.9" (testo) e 13.9 (numero) sono valori diversi e vengono segnalati con ~. Invece 13.9 e 13.90 sono lo stesso numero e non compaiono.
Perché il confronto non parte?
Servono due JSON validi, separati da una riga che comincia con --- (o con ===, se lo scegli in «Separati da»). Se uno dei due contiene un errore, come una virgola finale o gli apici singoli, il messaggio dice se è il primo o il secondo.
Viene inviato qualcosa a un server?
No. Gira nel browser: quello che incolli resta sul tuo computer.

Strumenti correlati