Vous devez activer Javascript pour accéder à ce site
 

Semaine

RECHERCHE

JSON

Malheureusement, le traitement d’un document XML en JavaScript est parfois
inutilement lourd. Pour cette raison, on remplace souvent le XML par du JSON (JavaScript Object Notation).

JSON a supplanté le XML dans plusieurs applications quant il s’agit de transmettre des informations simples, surtout lors que le récipiendaire utilise le JavaScript.

On peut voir le JSON comme une forme très limitée de JavaScript où on peut utiliser que des « objets » et des tableaux. Un « objets » en JavaScript est une structure de clés-valeurs avec la syntaxe « clef1 : valeur1, clef2:valeur2  » alors qu’un tableau est une simple liste de valeurs avec la syntaxe [ valeur1, valeur2 ] . Les clés doivent être des chaînes de caractères, mais les valeurs peuvent être d’autres objets, des tableaux, des chaînes de caractères, des nombres, des valeurs Booléennes ou la valeur spéciale « null ».

Parce qu’un objet ou un tableau peuvent, eux-mêmes, comprendre des objets et des tableaux, la syntaxe JSON permet des structures en arbre ressemblant au XML.

Voici, par exemple, les mêmes données présentées à la fois en JSON et en XML :

{
   "nom": "Daniel Lemire",
   "âge": 72,
   "téléphone": ["442-4321","442-4323"]
}
<personne>
   <nom>Daniel Lemire</nom>
   <age>72</age>
   <telephone>442-4321</telephone>
   <telephone>442-4323</telephone>
</personne>

Le chargement d’une chaîne de caractères au format JSON en JavaScript est aisé, il suffit d’utiliser la fonction : « var monjson = JSON.parse(machaine) ; ». La fonction retourne l’objet JavaScript correspondant. Par exemple, je pourrait faire monjson["nom"] dans l’exemple précédent pour obtenir le résultat « Daniel Lemire ». Nul besoin d’une API DOM.

Bien que JSON représente une excellente idée, il s’agit d’une idée plus simple que le XML... il n’y a pas, par exemple, d’équivalent du XSLT ou du CSS en JSON. Bien qu’on le pourrait en théorie, personne ne préconise d’utiliser JSON comme format de base pour les documents de bureautique (par ex., Microsoft Office).

À lire : présentation de JSON sur json.org et le tutoriel JSON de w3school.


© Daniel Lemire, 2014. Tous droits réservés.