JSON — JavaScript Object Notation
Sintassi testuale, leggera e indipendente dal linguaggio per lo scambio di dati strutturati.
Cos’è un file JSON?
JSON definisce una sintassi per rappresentare oggetti, array, stringhe, numeri, valori booleani e null. La sintassi non stabilisce da sola il significato applicativo dei dati: produttore e consumatore devono concordare lo schema e la semantica.
Le estensioni associate sono .json. L’estensione aiuta a identificare il formato, ma non sostituisce il controllo della struttura interna e del MIME type.
Caratteristiche tecniche
Un testo JSON è una sequenza Unicode che rappresenta un valore JSON. JSON non definisce schema, commenti, esecuzione o tipi binari; tali aspetti appartengono a profili e applicazioni specifiche.
- Strutture fondamentali: object e array.
- Valori: string, number, true, false e null.
- La codifica UTF-8 è quella interoperabile raccomandata da RFC 8259.
- Non supporta direttamente commenti, riferimenti ciclici o dati binari.
Come riconoscere un file JSON
Quando applicabile, la firma iniziale o magic bytes è:
Nessuna firma binaria fissa; il contenuto deve rispettare la grammatica JSON.
Come aprirlo
Per leggere un JSON usa un editor di testo o un visualizzatore con formattazione. Prima di usarlo in un'applicazione valida la sintassi e, quando esiste, lo schema atteso.
Software compatibili
- Visual Studio Code — Desktop. Formattazione e validazione tramite editor/extensions.
- jq — Windows, macOS, Linux. Parser e filtro da riga di comando.
- Browser moderni — Desktop e mobile. Visualizzazione e parsing tramite JavaScript.
Sicurezza
JSON è dati, non codice eseguibile. Il rischio nasce da dati non validati, parser vulnerabili, consumo eccessivo di memoria, injection quando i valori vengono inseriti in SQL/HTML/shell e da file di configurazione che l'applicazione interpreta con privilegi elevati.
Contenuti attivi: La sintassi JSON non definisce macro o script; un'applicazione può però interpretare campi JSON come configurazione o comandi.
Conversioni
Conversioni disponibili: YAML, XML, CSV, TOML.
La conversione può perdere commenti, ordine semantico, tipi numerici, riferimenti o valori non rappresentabili nel formato di destinazione. Validare sempre l'output.
Formati correlati
FAQ
JSON può contenere commenti?
Il JSON standard definito da ECMA-404 e RFC 8259 non prevede commenti. Alcuni strumenti accettano estensioni come JSON5, ma non sono JSON standard.
JSON è un linguaggio di programmazione?
No. È una sintassi di interscambio dati; non definisce istruzioni, funzioni o comportamento applicativo.
Come verifico un JSON?
Usa un parser o validatore e, se disponibile, lo schema dell'applicazione. Non affidarti solo all'estensione del file.
