Formattare e indentare JSON
- Dashboard
- Documentazione
- API
Perché la formattazione JSON?
La formattazione JSON permette di rendere i dati JSON più leggibili e comprensibili per gli sviluppatori e gli utenti. Questo facilita il debug, la code review e l'analisi dei dati, in particolare quando si tratta di file JSON complessi e voluminosi. Un JSON ben formattato può anche essere integrato più facilmente nei documenti e nei report.
Come formattare JSON
Nella pagina di formattazione, potete formattare il vostro JSON incollandolo nella zona di testo prevista a tal scopo o caricando un file contenente JSON.
Non appena il JSON viene sottomesso, sarà formattato e mostrato in una zona di risultato. Se il JSON è invalido, sarà mostrato un errore con un'indicazione della natura del problema.
Usare il JSON formattato
Potete copiare il JSON formattato usando il pulsante di copia previsto a tal scopo. Questo faciliterà l'integrazione del JSON nei vostri progetti o report.
Il vostro codice JSON dovrebbe assomigliare a questo:
{
"id": 12345,
"name": "John Doe",
"email": "johndoe@example.com",
"address": {
"street": "123 Main St",
"city": "Springfield",
"state": "IL",
"postalCode": "62704",
"country": "USA"
},
"phoneNumbers": [
{
"type": "home",
"number": "555-1234"
},
{
"type": "work",
"number": "555-5678"
}
],
"orders": [
{
"orderId": 1001,
"orderDate": "2023-06-01T14:30:00Z",
"items": [
{
"productId": 2001,
"productName": "Laptop",
"quantity": 1,
"price": 999.99,
"details": {
"manufacturer": "TechCorp",
"warranty": "2 years"
}
},
{
"productId": 2002,
"productName": "Mouse",
"quantity": 2,
"price": 25.50,
"details": {
"manufacturer": "GadgetCo",
"warranty": "1 year"
}
}
],
"totalAmount": 1051.49
},
{
"orderId": 1002,
"orderDate": "2023-06-10T10:15:00Z",
"items": [
{
"productId": 2003,
"productName": "Keyboard",
"quantity": 1,
"price": 45.99,
"details": {
"manufacturer": "KeyMasters",
"warranty": "3 years"
}
}
],
"totalAmount": 45.99
}
],
"preferences": {
"newsletter": true,
"notifications": {
"email": true,
"sms": false
},
"theme": "dark"
},
"lastLogin": "2024-06-14T09:30:00Z"
}
Domande frequenti
Qual è la differenza tra un formattatore, un validatore e un minificatore JSON?
Un formattatore (beautifier) riscrive un JSON compatto in versione indentata e leggibile. Un validatore verifica unicamente che la sintassi sia conforme alla specifica (RFC 8259) e segnala gli errori. Un minificatore fa il contrario del formattatore: rimuove tutti gli spazi per ridurre la dimensione del file. Il nostro strumento combina formattazione e validazione: se il JSON è invalido, un messaggio di errore precisa la posizione del problema.
Il JSON standard accetta commenti e virgole finali?
No. La specifica JSON (RFC 8259) vieta strettamente i commenti (// o /* */) e le virgole finali dopo l'ultimo elemento di un array o oggetto. Se ne avete bisogno, guardate JSON5 o JSONC, due estensioni che accettano commenti e virgole finali, usate in particolare dai file di configurazione di VS Code e TypeScript.
Perché le stringhe devono usare virgolette doppie?
La specifica JSON impone le virgolette doppie (") per tutte le stringhe e tutte le chiavi di oggetto. Le virgolette singole (') non sono valide, anche se JavaScript le accetta. Un errore frequente quando si copia da codice JS è mantenere le virgolette singole: il formattatore segnala allora un errore di parsing.
Come gestire i grandi numeri o i numeri decimali molto precisi?
JSON non distingue gli interi dai numeri in virgola mobile: tutto è number. I parser JavaScript convertono automaticamente in Number, che perde precisione oltre 2^53 (interi) e ha una precisione in virgola mobile limitata a 15 cifre significative. Per gli identificatori lunghi (Twitter ID, snowflake Discord) o gli importi finanziari, codificateli come stringhe ("123456789012345678") per preservare la precisione.
Quale indentazione scegliere: 2 o 4 spazi?
L'indentazione a 2 spazi è la convenzione dominante (Prettier, ESLint per default, convenzioni npm), resta leggibile anche per documenti molto nidificati. L'indentazione a 4 spazi conviene ai documenti piatti dove la verticalità aiuta la lettura. L'essenziale è la coerenza in uno stesso progetto. Il nostro strumento usa 4 spazi per default, conforme al pretty print di json_encode(JSON_PRETTY_PRINT) in PHP.
Cosa fare se il mio JSON contiene caratteri Unicode o emoji?
JSON supporta nativamente UTF-8. Gli emoji, accenti, caratteri CJK e altri script non latini sono preservati così come sono nell'output formattato. Se il vostro JSON usa l'escape Unicode (é per é), resta valido ma il formattatore non lo riscrive in carattere nativo. Per normalizzare, ripassate da un parser stretto come JSON.parse seguito da JSON.stringify.
Esempio di richiesta
curl -X POST https://cdrn.fr/api/v1/tools/json-formatter/execute \
-H "Content-Type: application/json" \
-d '{"input":"..."}'
Schema di input
| Campo | Tipo | Richiesto | Predefinito |
|---|---|---|---|
input |
text | ✓ | – |
Endpoint
GET https://cdrn.fr/api/v1/tools- elenca tutti gli strumenti disponibiliGET https://cdrn.fr/api/v1/tools/json-formatter- recupera lo schema di questo strumentoPOST https://cdrn.fr/api/v1/tools/json-formatter/execute- esegue questo strumento con un payload JSON