Risposta breve: per il JSON, «pretty print» e «format» sono la stessa cosa —— e così è «beautify». Tutti e tre significano aggiungere indentazione coerente e a-capo perché la struttura sia leggibile, senza cambiare i dati. La confusione è reale però, perché alcune operazioni davvero diverse (minify, validare, vista ad albero) stanno lì accanto. Questa guida fa ordine nella terminologia e mostra cosa cambia davvero.
Pretty Print, Format, Beautify —— Stessa operazione
«Pretty print JSON», «format JSON» e «beautify JSON» descrivono tutte la stessa operazione: prendere un valore JSON (spesso una stringa compatta su una sola riga) e ri-serializzarlo con indentazione e a-capo. L'output è semanticamente identico all'input —— qualunque parser produce gli stessi dati da entrambe le forme, perché il whitespace fra token in JSON non è significativo.
// Compatto (quello che restituisce un'API)
{"user":{"name":"Ada","roles":["admin","editor"]}}
// Pretty-printed / formatted / beautified —— dati identici
{
"user": {
"name": "Ada",
"roles": [
"admin",
"editor"
]
}
}Quindi se uno strumento offre «Format», «Beautify» e «Pretty Print» come pulsanti separati, fanno tutti lo stesso lavoro. Non c'è alcuna distinzione tecnica utile da imparare.
Allora cosa cambia davvero?
Le distinzioni utili non sono fra pretty-print e format —— sono fra formattare e queste operazioni vicine:
| Operazione | Cosa fa | Cambia i dati? |
|---|---|---|
| Pretty print / format / beautify | Aggiunge whitespace per leggibilità | No |
| Minify | Rimuove whitespace per ridurre la dimensione | No |
| Validare | Verifica che il JSON sia sintatticamente corretto | No |
| Vista ad albero | Mostra una struttura interattiva e collassabile | No |
| Riparare | Aggiusta JSON non valido (virgolette, virgole) perché possa essere parsato | Sì (corregge la sintassi) |
Minify è l'esatto opposto di pretty print —— vedi Come minificare JSON. La validazione è un controllo a parte (Come validare JSON), ed esplorare grossi payload ad albero è un'altra cosa ancora (JSON Tree Viewer). Se il tuo input non si parsa nemmeno, ti serve prima la riparazione, non la formattazione.
Come fare pretty print di JSON
La meccanica è la stessa indipendentemente da quale parola usi lo strumento:
// JavaScript —— il terzo argomento è l'indentazione
JSON.stringify(value, null, 2); // da un valore
JSON.stringify(JSON.parse(raw), null, 2); // da una stringa JSON
# Python
import json
json.dumps(data, indent=2)
# Riga di comando
jq . data.json # jq fa pretty-print di default
python3 -m json.tool data.jsonPer la procedura completa — — ordinare le chiavi, opzioni CLI, convertire altri formati —— vedi Come formattare JSON.
Pretty print di JSON online
Per fare pretty-print senza scrivere codice, incolla il tuo JSON in JSON Fix: formatta con indentazione coerente di 2 spazi (e ripara prima gli errori comuni, quindi funziona anche con JSON non del tutto valido), interamente nel browser e senza upload. Preferisci una vista interattiva di un documento grande? Usa invece il JSON Viewer.
Domande frequenti
«pretty print JSON» è lo stesso di «format JSON»?
Sì. Per il JSON, pretty print, format e beautify significano la stessa cosa: aggiungere indentazione e a-capo per la leggibilità senza cambiare i dati.
Il pretty print cambia i miei dati JSON?
No. Il whitespace fra token in JSON è insignificante, quindi le forme pretty-printed e compatte si parsano alla stessa struttura dati.
Come faccio pretty print di JSON in JavaScript?
Usa JSON.stringify(value, null, 2) —— il terzo argomento imposta l'indentazione (2 spazi, 4 spazi o '\t' per i tab). Fai prima il parse se parti da una stringa.
Qual è l'opposto del pretty print di JSON?
Minificare —— rimuovere tutto il whitespace insignificante per produrre JSON compatto su una sola riga. Vedi Come minificare JSON.
Strumenti e guide correlate
- JSON Fix —— pretty-print (e ripara) JSON nel tuo browser
- Come formattare JSON —— la how-to completa con codice e CLI
- Come minificare JSON —— l'operazione opposta
- JSON Viewer vs JSON Formatter —— visualizzare vs formattare
- Cos'è JSON? —— perché il whitespace è insignificante