L'exemple de cet article décrit la méthode de lecture et d'analyse js des données de type JSON. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
1. Qu'est-ce que JSON ?
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. En même temps, JSON est un format natif de JavaScript.
Très adapté à l'interaction entre le serveur et JavaScript
2. Pourquoi utiliser JSON au lieu de XML
Ils disent tous ceci : bien qu'il y ait beaucoup de publicité sur la façon dont XML présente des avantages multiplateformes et multilingues, cependant, à moins qu'il ne soit appliqué aux services Web, dans les applications Web ordinaires, les développeurs ont souvent du mal à analyser XML. C'est un casse-tête Que le serveur génère ou traite du XML, ou que le client utilise JavaScript pour analyser le XML, cela conduit souvent à un code complexe et à une efficacité de développement extrêmement faible. En fait, pour la plupart des applications Web, elles n'ont pas du tout besoin de XML complexe pour transmettre des données, l'extensibilité de XML présente rarement un avantage et de nombreuses applications AJAX renvoient même directement des fragments HTML pour créer des pages Web dynamiques. Par rapport au renvoi de XML et à son analyse, le renvoi de fragments HTML réduit considérablement la complexité du système, mais manque également d'un certain degré de flexibilité
3. Comment utiliser
Le code suivant est un extrait de code HTML, qui vous permet de cliquer sur un bouton pour analyser les données au format json et alerter le contenu
var json = { contry:{ area:{ man:"12万", women:"10万" } } }; //方式一:使用eval解析 var obj = eval(json); alert(obj.constructor); alert(obj.contry.area.women); //方式二:使用Funtion函数 var strJSON = "{name:'json name'}";//得到的JSON var obj = new Function("return" + strJSON)();//转换后的JSON对象 alert(obj.name);//json name alert(obj.constructor); //复杂一点的json数组数据的解析 var value1 = [ {"c01":"1","c02":"2","c03":"3","c04":"4","c05":"5","c06":"6","c07":"7","c08":"8","c09":"9"}, {"c01":"2","c02":"4","c03":"5","c04":"2","c05":"8","c06":"11","c07":"21","c08":"1","c09":"12"}, {"c01":"5","c02":"1","c03":"4","c04":"11","c05":"9","c06":"8","c07":"1","c08":"8","c09":"2"} ]; var obj1 = eval(value1); alert(obj1[0].c01); //复杂一点的json的另一种形式 var value2 = { "list":[ {"password":"1230","username":"coolcooldool"}, {"password":"thisis2","username":"okokok"} ], "array":[ {"password":"1230","username":"coolcooldool"}, {"password":"thisis2","username":"okokok"} ] }; var obj2 = eval(value2); alert(obj2.list[0].password); }
4. évaluation
① Ce formulaire réduira considérablement les performances car il doit exécuter le compilateur
② La fonction eval affaiblit également la sécurité de votre application car elle donne trop de puissance au texte en cours d'évaluation. Tout comme la façon dont l'instruction with s'exécute, cela ralentit les performances du langage
③ Le constructeur Function est une autre forme d'évaluation, il doit donc également être évité.
J'espère que cet article sera utile à tout le monde dans la programmation JavaScript.