JSON — JavaScript Object Notation

Sintassi testuale, leggera e indipendente dal linguaggio per lo scambio di dati strutturati.

Estensioni
.json
MIME type
application/json
Tipo
formato di dati · testuale Unicode
Standard
ECMA-404; RFC 8259
Produttore
Ecma International / IETF
Compatibilità
Windows, macOS, Linux, Android, iOS, Browser/Web

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.

Windows
Apribile con editor di testo, browser e strumenti di sviluppo.
macOS
Apribile con TextEdit, editor di codice e browser.
Linux
Apribile con editor, jq e strumenti della shell.
Android
Apribile con editor o app che implementano un parser JSON.
iOS
Apribile con editor o app compatibili.
Browser/Web
Visualizzabile e consumabile via Fetch/API; il MIME corretto è application/json.

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

Rischio contestuale

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

YAMLXMLCSV

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.