JSON è un formato standard per lo scambio di dati tra piattaforme informatiche che nasce e si basa sul linguaggio JavaScript (JSON è infatti l'acronimo di JavaScript Object Notation).

JSON è un formato testuale completamente indipendente dal linguaggio, in quanto può essere utilizzato ed interpretato correttamente anche da altri linguaggi come, ad esempio, PHP, Java, C, Python, Ruby e molti altri.

Il successo di JSON è dovuto pertanto a due fattori principali:

  • è un formato testuale semplice e leggero;
  • è totalmente indipendente dal linguaggio.

LA SINTASSI DI JSON

La sintassi di JSON ricorda moltissimo quella degli oggetti JavaScript dove i dati sono rappresentati sotto forma di coppie nome-valore separate mediante il simbolo dei due punti (:) che funge da operatore di assegnazione.

Vediamo un semplice esempio per notare la somiglianza delle due rappresentazioni.

Un oggetto JavaScript è scritto nel seguente modo:

 

var persona = { nome: "Mario", cognome: "Rossi", eta: 20 }

 

mentre il rispettivo JSON sarebbe:

 

{ "nome": "Mario", "cognome": "Rossi", "eta": "20" }

 

Come possiamo notare le due sintassi sono quasi identiche con la sola differenza che in JSON anche i nomi (oltre ai valori) necessitano delle virgolette. Per il resto, le somiglianze con JavaScript sono piuttosto evidenti:

  • la stringa JSON è delimitata da parentesi graffe esattamente come l'oggetto definito in JavaScript;
  • le diverse coppie nome-valore sono separate da delle virgole;
  • nome e valore sono collegati tra loro dal simbolo due punti (:).

ARRAY DI VALORI CON JSON

Mediante JSON è possibile rappresentare della Array. Per farlo si utilizzano le parentesi quadre in questo modo:

 

{

  "persone": [

    { "nome": "Mario", "cognome": "Rossi", "eta": "20" },

    { "nome": "Antonio", " cognome ": "Bianchi", " eta ": "45" },

    { "nome": "Sara", " cognome ": "Memoli", " eta ": "18" }

  ]

}

 

Ancora una volta, esattamente come in JavaScript, l'array può contenere diversi oggetti, ciascuno dei quali delimitato da paretesi graffe.

INTERPRETARE JSON CON JAVASCRIPT

Normalmente l'utilizzo di JSON in un applicativo lato client, prevede che i dati così formattati siano il frutto di una elaborazione lato server. In pratica, l'utilizzo di JSON è frequente nelle applicazioni di tipo AJAX dove si verifica, appunto, un interscambio di dati tra uno codice JavaScript ed una sorgente di dati remota.

Un JSON di risposta, ottenuto da una chiamata AJAX, potrà essere convertito in un oggetto JavaScript mediante la funzione JSON.parse().

La funzione JSON.parse() accetta come argomento una stringa in notazione JSON grazie alla quale generare un oggetto JavaScript.

Una volta trasformato la stringa JSON in un oggetto potremo accedere ai dati con la sintassi JavaScript.

CONCLUSIONI

Il formato JSON risulta un validissimo sistema di scambio dati quando si ha la necessità di sviluppare applicativi che coinvolgono diversi linguaggi e tecnologie. Il suo essere indipendente dal linguaggio, infatti, lo rende un ottimo alleato nello sviluppo di sistemi ibridi in cui sia necessario uno scambio dati tra gli script lato client ed una qualche sorgente server-side.

Articoli del tutorial