Maison >interface Web >js tutoriel >Comment convertir une chaîne javascript json en objet

Comment convertir une chaîne javascript json en objet

醉折花枝作酒筹
醉折花枝作酒筹original
2021-04-08 18:26:4224175parcourir

Méthode de conversion : 1. Utilisez la méthode "JSON.parse()", la syntaxe est "JSON.parse (chaîne JSON valide)" ; 2. Utilisez la méthode "JSON.stringify()", la la syntaxe est "JSON. stringify (chaîne JSON valide)".

Comment convertir une chaîne javascript json en objet

L'environnement d'exploitation de ce tutoriel : système Windows 7, JavaScript version 1.8.5, ordinateur Dell G3.

Dans les projets réels, nous rencontrons souvent des problèmes de format de caractères. Notez-les pour une révision facile à l'avenir. Deux fonctions sont utilisées : JSON.stringify() et JSON.parse().

Utilisez ajax pour demander des données à l'arrière-plan, et l'arrière-plan renvoie les données au front-end. Évidemment, le script back-end écrit le format json traité par la fonction json, mais lorsque le front-end reçoit le. des données, c'est parfois un objet et parfois une chaîne. C'est déroutant. La raison précise ne m'est pas encore claire.

Pendant le processus de transmission des données, json est transmis sous forme de texte, c'est-à-dire une chaîne, et JS opère sur les objets JSON. Par conséquent, la clé est de convertir entre les objets JSON et les chaînes JSON.

Par exemple :

Chaîne JSON :

var str1 = '{ "name": "cxh", "sex": "man" }';

Objet JSON :

var str2 = { "name": "cxh", "sex": "man" };

1. Convertir la chaîne JSON en objet JSON

Pour utiliser str1 ci-dessus, vous devez d'abord utiliser la méthode suivante pour la convertir en objet JSON :

//Convertir de la chaîne JSON en JSON Objet

var obj = eval('(' + str + ')');

ou

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

ou

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

Ensuite, il peut se 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 problèmes (lancement d'une exception de syntaxe) après en utilisant la fonction parseJSON().

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);

Remarque :

Parmi les méthodes ci-dessus, à l'exception de la fonction eval(), fournie avec js, les autres méthodes proviennent toutes du package json.js. La nouvelle version de JSON modifie l'API et injecte 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.

[Apprentissage recommandé : Tutoriel vidéo javascript]

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