English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Analyse JSON.parse()

JSON est utilisé pour échanger des données avec le serveur Web. Lorsque vous recevez des données du serveur Web, les données sont toujours des chaînes.

La méthode JSON.parse() analyse une chaîne JSON pour construire des valeurs JavaScript ou des objets décrits par cette chaîne.

Syntaxe :

JSON.parse(text, reviver)

Le premier paramètre spécifie la chaîne à analyser en JSON.

Le deuxième paramètre optionnel spécifie une fonction à vérifier pour chaque propriété avant de renvoyer la valeur.

Analyse JSON

Supposons que nous recevions le texte suivant de l'serveur Web :

 {"name":"Seagull", "age":22, "city":"New Delhi"

Avec la méthode JSON.parse(), nous pouvons convertir un texte JSON en objet JavaScript :

var myObj = JSON.parse('{"name":"Seagull", "age":22, "city":"New Delhi"
Voyons un test‹/›

JSON provenant du serveur

Vous pouvez demander au serveur JSON en utilisant une requête AJAX.

Si la réponse du serveur est rédigée en format JSON, vous pouvez parser la chaîne en objet JavaScript.

Voici un exemple de requête de fichierdemo.jsonet analysez la réponse :

var httpRequest = new XMLHttpRequest();
httpRequest.onreadystatechange = function() {
   if (this.readyState === 4 && this.status === 200) {
      var myObj = JSON.parse(this.responseText);
      document.getElementById("output").innerHTML = myObj.name;
   }
};
httpRequest.open("GET", "demo.json", true);
httpRequest.send();
Voyons un test‹/›

Tableau en tant que JSON

JSON.parse() est utilisé sur un JSON dérivé d'un tableau, ce qui renverra un tableau JavaScript, et non un objet JavaScript.

Voici un exemple de requête de fichierjson_array.txtet analysez la réponse :

var httpRequest = new XMLHttpRequest();
httpRequest.onreadystatechange = function() {
   if (this.readyState === 4 && this.status === 200) {
      var myArr = JSON.parse(this.responseText);
      document.getElementById("output").innerHTML = myArr[0];
   }
};
httpRequest.open("GET", "json_array.txt", true);
httpRequest.send();
Voyons un test‹/›

Analyse de la date

Les objets date ne sont pas autorisés dans JSON.

Si vous devez inclure une date, écrivez-la sous forme de chaîne, puis convertissez-la en objet date plus tard.

var myJSON = '{"name":"Seagull", "birth":"1997-11-10", "ville":"New Delhi"}';
var myObj = JSON.parse(myJSON);
myObj.birth = new Date(myObj.birth);
document.getElementById("output").innerHTML = myObj.name + " DOB is " + myObj.birth;
Voyons un test‹/›

Remarque:Convertir une chaîne en objet local appeléAnalyse,et convertit l'objet local en un objet pouvant être transmis sur le réseauChaîneest appeléStringification.