JavaScript Object Notation - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Performances

Du point de vue du temps de traitement, évaluer une expression JSON en JavaScript est à peu de choses près aussi efficace que traiter son équivalent XML.

Du point de vue de la taille (stockage, vitesse de transmission…), une expression JSON est légèrement moins volumineuse ; la différence n’est cependant sensible que sur de gros volumes, ce qui est rarement le cas pour un usage courant.

Évaluation

En JavaScript, il est simple d’évaluer une expression JSON pour la transformer en objet natif :

       var donnees = eval('('+donnees_json+')');      

Cette méthode comporte toutefois des risques car la chaîne de caractères donnees_json peut contenir n’importe quel code JavaScript. Il existe une méthode plus sûre qui consiste à parser la chaîne de caractères donnees_json, seule solution disponible dans les autres langages de programmation, à l’exception de Python, la syntaxe de JSON correspondant à ses deux types principaux : les listes et les dictionnaires.

Les navigateurs commencent (en 2009) à intégrer un support natif du format JSON, ce qui facilite sa manipulation, la sécurité (contre l’évaluation de scripts malveillants inclus dans une chaine JSON), et la rapidité de traitement. Ainsi les navigateurs Firefox 3.5 , IE 8 ou encore Opera 10.5 l’intègrent en natif.

Évaluer en JavaScript une expression JSON pour la transformer en objet se fait alors de la manière suivante :

       var donnees = JSON.parse(donnees_json);              // Ou version multi-navigateurs:              var donnees2 = typeof JSON !='undefined' ?  JSON.parse(donnees_json) : eval('('+donnees_json+')');      
Page générée en 0.093 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales
Version anglaise | Version allemande | Version espagnole | Version portugaise