Formattatore e Validatore JSON
Incolla il JSON qui sotto, poi scegli se formattare o minificare. Un JSON non valido riceve l'errore reale del parser, non una schermata vuota — nulla di ciò che incolli lascia il tuo browser.
Formatta, valida e riduci il JSON in un solo passaggio
JSON.parse riesce oppure lancia un errore, quindi
la validazione è un effetto collaterale gratuito della
formattazione — questo strumento analizza ciò che incolli e ti
dice onestamente quale dei due è successo.
Formatta riordina un JSON valido con
l'indentazione che scegli — 2 spazi, 4 spazi o tabulazione — per
la leggibilità, e Minifica rimuove ogni
carattere non essenziale per il payload più piccolo possibile.
Se l'input non è valido, ottieni il vero SyntaxError
del parser invece di una descrizione fatta a mano — è meno
elegante, ma è accurato, e quasi tutti i motori indicano la
posizione esatta del carattere che ha bloccato il parsing.
Esempio pratico
Input: {"user":"Ada","admin":true,"roles":["dev","ops"]}
(49 caratteri, 3 chiavi). Formatta con
indentazione a 2 spazi produce:
{
"user": "Ada",
"admin": true,
"roles": [
"dev",
"ops"
]
}
— 75 caratteri, pronto per la lettura. Minifica
sullo stesso input lo restituisce esattamente com'era
all'inizio, a 49 caratteri, dato che non aveva già spazi bianchi
in eccesso. Ora prova {"user":"Ada","admin":true,}
— la virgola finale dopo true non è JSON valido, e
questo strumento mostra il vero errore del browser invece di
fallire in silenzio o inventarne uno.
Domande frequenti
Cosa rende un JSON non valido?
Le cause più comuni: una virgola finale dopo l'ultimo elemento di un oggetto o di un array ({"a":1,}), gli apici singoli al posto delle virgolette doppie ('chiave' invece di "chiave"), le chiavi senza virgolette ({chiave: 1} invece di {"chiave": 1}) e i commenti (// o /* */ — lo standard JSON non prevede alcuna sintassi di commento). Tutti e quattro sono perfettamente validi in un oggetto letterale JavaScript, ed è esattamente per questo che incollare codice JS come se fosse JSON fallisce così spesso.
Perché il messaggio di errore sembra così tecnico?
Perché non è un testo nostro — è il vero messaggio SyntaxError prodotto da JSON.parse, mostrato esattamente come lo scrive il browser, invece di una descrizione inventata di dove pensiamo sia il problema. A seconda del browser può apparire in inglese, ma è onesto: è ciò che vedresti aprendo la console, e quasi sempre indica la posizione del carattere che ha fatto fallire il parsing.
I miei dati vengono caricati da qualche parte?
No. Parsing, formattazione e minificazione avvengono interamente nel tuo browser tramite JSON.parse e JSON.stringify — nulla di ciò che incolli viene inviato, salvato o registrato su un server. Vale per ogni strumento di questo sito.
Questo strumento valida il mio JSON contro uno schema?
No — controlla solo la SINTASSI: le parentesi graffe sono bilanciate, le stringhe sono tra virgolette corrette, ogni virgola è al posto giusto. Non ha modo di sapere se i tuoi dati hanno i campi, i tipi o la forma giusta per la tua applicazione — per quello serve una validazione JSON Schema, un controllo strutturale separato che questo strumento non esegue.