Tutto in questa pagina sta intenzionalmente su uno schermo: la sintassi di JSON e abbastanza piccola perche un riferimento completo non debba essere lungo. Leggilo qui, o scarica lo stesso riferimento come immagine per tenerlo offline o stamparlo.

1. Struttura
JSON e scritto come coppie chiave-valore all’interno di un oggetto ({ }) o come una
lista ordinata all’interno di un array ([ ]). Le chiavi sono sempre stringhe. I valori possono
essere una stringa, un numero, un booleano, null, un array o un altro oggetto, annidati
quanti livelli i dati effettivamente richiedono.
{
"name": "Ada",
"age": 36,
"active": true,
"skills": ["json", "css"],
"address": { "city": "London" },
"nickname": null
}
2. Regole di sintassi
- Le chiavi e i valori di tipo stringa usano le virgolette doppie. Le virgolette singole non sono JSON valido.
- Due punti separano ogni chiave dal suo valore.
- Una virgola separa le coppie e gli elementi dell’array, senza alcuna dopo l’ultimo.
- Gli array sono liste ordinate, valori separati da virgole.
- Nessun commento. JSON standard non ha sintassi per i commenti, ne
//ne#.
3. Tipi di dati
| Tipo | Esempio | Note |
|---|---|---|
| Stringa | "hello" |
Solo virgolette doppie |
| Numero | 42, -3.14 |
Senza esadecimale, senza NaN, senza zero iniziale |
| Booleano | true, false |
In minuscolo, senza virgolette |
| Null | null |
In minuscolo, senza virgolette |
| Array | ["a", 1, true] |
Ordinato, tipi misti ammessi |
| Oggetto | {"key": "value"} |
Le chiavi sono sempre stringhe |
Tipi di dati JSON spiegati analizza ognuno di questi con i casi limite che fanno inciampare gli analizzatori.
4. Operazioni comuni (JavaScript)
JSON.parse(text) // stringa -> valore, lancia errore su JSON non valido
JSON.stringify(value) // valore -> stringa
JSON.stringify(value, null, 2) // stampa formattata, rientro di 2 spazi
value.key // leggere una chiave dopo il parsing
value.nested.key // leggere una chiave annidata
5. Esempi
Array di oggetti
[
{ "id": 1, "name": "Ada" },
{ "id": 2, "name": "Linus" }
]
Oggetto annidato
{ "user": { "id": 1, "verified": true } }
Tipi misti
{ "tags": ["a", "b"], "score": null, "live": false }
6. Buone pratiche
- Usa nomi di chiave significativi e coerenti.
- Mantieni le strutture il piu piatte possibile, compatibilmente con i dati.
- Valida il JSON prima di analizzare un input che non hai generato tu.
- Usa gli array per gli elenchi, non oggetti con chiavi dall’aspetto numerico.
- Metti tra virgolette i numeri interi grandi come stringhe se la precisione esatta conta; un ID a
64 bit puo essere arrotondato in un
JSON.parsenormale (vedi Tipi di dati JSON). - Gestisci gli errori di analisi in modo esplicito. Non dare mai per scontato che un input sia JSON valido solo perche lo e abitualmente.
Dove proseguire
- Che cos’e JSON?, la versione per principianti di questa pagina.
- JSON vs YAML e JSON vs XML, quando JSON non e il formato giusto.
- Il JSON Formatter e il JSON Validator, per controllare un documento reale rispetto a tutto quanto sopra.