Maison >développement back-end >tutoriel php >méthode js pour lire et analyser les données JSON

méthode js pour lire et analyser les données JSON

小云云
小云云original
2017-11-17 10:29:025539parcourir

JSON (JavaScript Object Notation) est un format d'échange de données léger qui utilise un format de texte totalement indépendant du langage et constitue un format d'échange de données idéal. Dans le même temps, JSON est un format natif JavaScript, ce qui signifie que le traitement des données JSON en JavaScript ne nécessite aucune API ou boîte à outils spéciale.

Cet article est principalement un résumé des opérations JS sur JSON.

En JSON, il existe deux structures : les objets et les tableaux.

1. Un objet commence par "{" (crochet gauche) et se termine par "}" (crochet droit). Chaque "nom" est suivi d'un ":" (deux-points) ; les paires "nom/valeur" sont séparées par "," (virgule). Le nom est placé entre guillemets ; la valeur doit être placée entre parenthèses s'il s'agit d'une chaîne, mais pas s'il s'agit d'une valeur numérique. Par exemple :

var o={"xlid":"cxh","xldigitid":123456,"topscore":2000,"topplaytime":"2009-08-20"};

2. Un tableau est une collection ordonnée de valeurs. Un tableau commence par "[" (crochet gauche) et se termine par "]" (crochet droit). Utilisez "," (virgule) pour séparer les valeurs.

Par exemple :

var jsonranklist = [
    {"xlid":"cxh","xldigitid":123456,"topscore":2000,"topplaytime":"2009-08-20"},
    {"xlid":"zd","xldigitid":123456,"topscore":1500,"topplaytime":"2009-11-20"}
];

Afin de traiter facilement les données JSON, JSON fournit le package json.js, adresse de téléchargement : http://www.json.org/json.js

Dans le processus de transmission de données, json est transmis sous forme de texte, c'est-à-dire une chaîne, et JS fonctionne sur des objets JSON, donc la conversion entre les objets JSON et les chaînes JSON est la clé. Par exemple :

Chaîne JSON :

var str1 = '{ "name": "cxh", "sex": "man" }';
JSON对象:
var str2 = { "name": "cxh", "sex": "man" };

1. Convertir la chaîne JSON en objet JSON

Pour utiliser le str1 ci-dessus, vous devez utiliser ce qui suit pour le convertir en Objet JSON :

//由JSON字符串转换为JSON对象
var obj = eval('(' + str + ')');

ou

var obj = str.parseJSON(); //由JSON字符串转换为JSON对象

ou

var obj = JSON.parse(str); //由JSON字符串转换为JSON对象

Ensuite, vous pouvez le lire comme ceci :

Alert(obj.name);
Alert(obj.sex);

Remarque spéciale : si obj est à l'origine un objet JSON, ce sera toujours un objet JSON après la conversion à l'aide de la fonction eval() (même s'il est converti plusieurs fois), mais il y aura des questions après le traitement à l'aide de la fonction parseJSON() ( une exception de syntaxe sera levée).

2. Vous pouvez utiliser toJSONString() ou la méthode globale JSON.stringify() pour convertir l'objet JSON en chaîne JSON.

Par exemple :

var last=obj.toJSONString(); //将JSON对象转化为JSON字符

ou

var last=JSON.stringify(obj); //将JSON对象转化为JSON字符
alert(last);

Groupe de données

var str='[{"name":"cxh","sex":"man"},{"name":"cxh1","sex":"man1"}]';    
var obj = str.parseJSON();    
alert(obj[0].name)

Remarque : Multiple de

ci-dessus Parmi les méthodes, à l'exception de la fonction eval(), fournie avec js, de nombreuses autres méthodes proviennent du package json.js. La nouvelle version de JSON a modifié l'API, injectant les méthodes JSON.stringify() et JSON.parse() dans les objets intégrés de Javascript. La première devient Object.toJSONString() et la seconde devient parseJSON(. ). Si vous êtes invité à indiquer que les méthodes toJSONString() et parseJSON() sont introuvables, cela signifie que la version de votre package json est trop basse.

Ce qui précède est une explication détaillée de la façon dont js lit et analyse les données JSON. J'espère que cela pourra aider tout le monde.

Recommandations associées :

Comment obtenir une instance de la longueur du tableau dans un tableau Json avec JS

Remarques sur la conversion d'une chaîne en json

Explication détaillée de l'analyse JSON par Python

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn