Formattatore JSON
Formatta, minifica e verifica JSON all'istante.
Funziona nel browser. Quello che scrivi non viene inviato da nessuna parte.
- Posizione esatta dell'errore
- Vista ad albero comprimibile
- Niente viene caricato
Come formattare JSON
- Incolla o carica il tuo JSON.
- Scegli pretty print o minifica, e una dimensione di indentazione.
- Copia o scarica il risultato.
Pretty print o minifica
| Pretty print | Minifica | |
|---|---|---|
| Spaziatura | Aggiunge indentazione e interruzioni di riga | La rimuove tutta |
| Dimensione file | Più grande, più facile da leggere | La più piccola possibile, stessi dati |
| Ideale per | Modifica e debug | API di produzione e archiviazione |
Errori JSON comuni e come risolverli
| Errore | Soluzione |
|---|---|
| Virgola finale prima di } o ] | Rimuovi l'ultima virgola dell'elenco |
| Virgolette singole intorno a una stringa | Passa solo alle virgolette doppie |
| Un nome di proprietà senza virgolette | Racchiudi ogni chiave tra virgolette doppie |
| Un commento // o /* | Rimuovilo; il JSON non ha sintassi per i commenti |
| Parentesi quadra o graffa di chiusura mancante | Conta le coppie { } e [ ] corrispondenti |
| Un numero come 1. o .5 | Scrivi 1.0 oppure 0.5; il JSON richiede cifre su entrambi i lati del punto decimale |
| Un'interruzione di riga grezza dentro una stringa | Fai l'escape come \n, dato che un a-capo letterale tra virgolette non è ammesso |
Regole di sintassi JSON, dall'RFC 8259
- Un numero non può avere uno zero iniziale (01 non è valido) né un punto decimale finale senza cifre dopo (1. non è valido).
- Ogni chiave deve essere una stringa tra virgolette doppie. Le chiavi senza virgolette e le proprietà abbreviate di JavaScript non sono JSON valido.
- Gli unici letterali ammessi fuori dalle virgolette sono true, false e null, tutti minuscoli.
- Una stringa può usare solo le virgolette doppie; le virgolette singole e gli apici inversi sono funzionalità di JavaScript che il JSON non include.
- Le chiavi duplicate in un oggetto sono tecnicamente ammesse dalla grammatica, ma la maggior parte dei parser, incluso questo, conserva solo l'ultimo valore, quindi evita di contare sulla lettura di entrambe.
Domande su Formattatore JSON
Perché il mio JSON mostra un errore su una riga che sembra corretta?
Il parser segnala il punto in cui si è arreso, che spesso è un carattere dopo il vero errore, come una virgola mancante nella riga sopra. Controlla anche la riga appena prima di quella indicata.
Cosa fa Ordina chiavi?
Riordina alfabeticamente le chiavi di ogni oggetto prima di stampare, il che rende più facile confrontare due file JSON o trovare un campo specifico.
Posso formattare file JSON molto grandi?
Sì, ma la vista ad albero comprimibile si genera solo per input sotto i 300 KB. I file più grandi vengono comunque formattati e minificati, solo senza l'albero.
Qual è la differenza tra minifica e pretty print?
Pretty print aggiunge interruzioni di riga e indentazione per la lettura. Minifica rimuove tutto questo per rendere il file il più piccolo possibile in produzione.
Cosa richiede davvero lo standard JSON, l'RFC 8259?
Definisce la grammatica esatta del JSON: oggetti e array, stringhe tra virgolette doppie, numeri senza zeri iniziali, e i letterali true, false e null. Tutto ciò che è fuori da questa grammatica, come un commento o una virgola finale, non è JSON valido anche se alcuni parser lo accettano senza protestare.
Posso formattare file JSON5 o JSONC che permettono i commenti?
No. I commenti e le virgole finali, comuni nei file di configurazione JSONC usati da alcuni editor, non sono JSON valido e qui vengono segnalati come errori. Rimuovili prima se stai lavorando con uno di questi formati più permissivi.
Posso espandere ogni nodo della vista ad albero in una volta sola?
Sì, clicca su Espandi tutto. I documenti grandi partono con aperti solo il primo livello o due per restare veloci; Espandi tutto apre ogni nodo rimanente su richiesta.
Posso scaricare il risultato formattato come file?
Sì. Il pulsante Scarica salva l'output attuale, formattato o minificato, come file .json, con il nome del file caricato oppure "formatted.json" se hai incollato il testo direttamente.