AJAX e JSON, accoppiata vincente

6 giugno 2006

L’esigenza di potersi interfacciare in modo universale con diverse tecnologie ha dato luce a JSON (JavaScript Object Notation), un sistema di scambio dati molto semplice basato su una formattazione di testo tale da rendere differenti tipi di variabili facilmente rappresentabili e comprensibili da occhi umani come dai linguaggi di scripting o programmazione più diffusi.

JSON è basato sugli standards ECMA-262 terza edizione e sulla programmazione in Javascript, linguaggio basato su questo stesso standard.

Questo formato permette a tecnologie differenti di scambiare informazioni e si rivela anche un buon metodo per interagire con chiamate asincrone, poichè permette di inviare diversi tipi di dati sotto forma di stringhe ben interpretabili dalla quasi totalità dei linguaggi server.

JSON, una stringa per tutti

Quali dati si possono convertire

I tipi di dato che possiamo usare con JSON per lo scambio di informazioni sono due:

  • array con soli indici numerici
  • oggetti

La scelta limitata è ricaduta su questi tipi di contenitori perché presenti nella maggior parte dei linguaggi di sviluppo. Anche i tipi che si possono racchiudere al loro interno vedremo essere abbastanza comuni.

Essi infatti possono contenere dati primitivi come:

  • numeri
  • booleani
  • stringhe
  • valore nullo (null)

oppure altri array o altri oggetti. Poremmo avere infatti oggetti popolati da array, array di array ed oggetti di oggetti. Ecco un esempio di variabili che si possono inviare o ricevere attraverso JSON:

Listato 1. Dichiarazioni di dati compatibili JSON

// oggetto generico che contiene
// tutti i tipi di dato compatibili con JSON
var oggetto = {
  articolo : “AJAX e JSON”,
  pubblicato : true,
  interessante : null,
  data  : [18, 5, 2006],
  info  : {autore: “Andrea Giammarchi”}
};

// array di valori misti
var arr = [“uno”, 2, 3.01, (2 === (2*2/2)), null, oggetto];

// array di array
var arr2 = [arr, arr, arr, arr, arr];

Usare JSON per l’invio di solo testo, di un numero o di un songolo valore booleano non è invece un approccio utile né adatto alla conversione/riassegnazione dei valori, che dovranno essere sempre racchiusi all’interno degli unici contenitori riconosciuti, array ed oggetti, anche qualora non dovessero avere alcun dato.

Listato 2. Inviare una singola stringa

// variabile non adatta per JSON
var str = “test”;

// variabili adatte per JSON
var arr = [str];
var obj = {testo:str};

Se vuoi aggiornamenti su AJAX e JSON, accoppiata vincente inserisci la tua e-mail nel box qui sotto:
 
X
Se vuoi aggiornamenti su AJAX e JSON, accoppiata vincente

inserisci la tua e-mail nel box qui sotto:

Ho letto e acconsento l'informativa sulla privacy

Acconsento al trattamento di cui al punto 3 dell'informativa sulla privacy