json
JSON (JavaScript Object Notation) è un formato per l'interscambio di dati client/server, più flessibile di XML, sempre più usato in AJAX e nel web 2.0
Indice
Oggetti come dati
A livello base un oggetto di Javascript è un formato di dati molto flessibile e robusto espresso come coppie di nomi/valori. Cioè un oggetto possiede un nome che è una proprietà dell'oggetto -- immaginiamo questo come un nome di variabile normale che è legato al nome dell'oggetto. E l'oggetto possiede il valore di quel nome. Ecco un esempio...
var mioPrimoJson = { "nome"    : "Mario",
                    "cognome" : "Rossi",
                    "anni"    : 32 };

document.writeln(myFirstJSON.nome);    // restituisce Mario
document.writeln(myFirstJSON.cognome); // restituisce Rossi
document.writeln(myFirstJSON.anni);    // restituisce 32
Questo oggetto ha 3 proprietà o coppie di nomi/valori. Il nome è una stringa -- nel nostri esempio, nome, cognome e anni. Il valore può essere qualsiasi oggetto di Javascript (e ricordiamoci che tutto in Javascript è un oggetto quindi il valore può essere una stringa, numero, array, funzione, persino altri oggetti) -- In questo esempio i nostri valori sono Mario, Rossi e 32. Mario e Rossi sono stringhe ma gli anni sono rappresentati da un numero e come potete vedere questo non è un problema.

Questa disposizione di dati è denominata JSON (JavaScript Object Notation) in quanto notazione dell'oggetto di Javascript. Ciò che lo rende particolarmente potente è che siccome il valore può essere qualunque tipo di dati, voi può memorizzare altri array ed altri oggetti, annidati profondamente secondo necessità.

Ecco un esempio abbastanza complesso di come può essere la struttura JSON:
var impiegati = { "contabili" : [ // "contabili" è un array in "impiegati".
                                  { "nome"    : "Mario",  // Primo elemento
                                    "cognome" : "Rossi",
                                    "anni"    : 32 },

                                  { "nome"    : "John",  // Secondo elemento
                                    "cognome" : "Smith",
                                    "anni"    : 24 }
                                ], // fine array "contabili".
                  "vendite"   : [ // "vendite" è un altro array in "impiegati".
                                  { "nome"    : "Sally", // Primo elemento
                                    "cognome" : "Green",
                                    "anni"    : 27 },

                                  { "nome"    : "Jim",   // Secondo elemento
                                    "cognome" : "Galley",
                                    "anni"    : 41 }
                                ] // fine dell'array "vendite".
                } // fine "impiegati"
Qui "impiegati" è un oggetto. Questo oggetto ha due proprietà o coppie nomi/valori: "amministrativi" è un array che a sua volta possiede due oggetti di JSON che mostrano i nomi e l'età di 2 impiegati. Inoltre "vendite" è un altro array che possiede due oggetti di JSON che mostrano il nome e l'età dei due impiegati che lavorano nelle vendite. Tutti questi dati esistono all'interno dell'oggetto "impiegati". Ci sono vari modi di accedere a questi dati.
json.it by WebGuide
W3C XHTML - W3C CSS