Citations simples ou doubles dans jQuery.parseJSON
En JavaScript, la méthode jQuery.parseJSON convertit une chaîne JSON en un objet JavaScript. Lorsque vous travaillez avec des chaînes JSON, il est crucial de comprendre la différence entre l'utilisation de guillemets simples et doubles.
Le problème
L'extrait de code ci-dessous fonctionne correctement :
var obj1 = jQuery.parseJSON('{"orderedList": "true"}');
Cependant, le code suivant ne parvient pas à analyser la chaîne JSON :
var obj2 = jQuery.parseJSON("{'orderedList': 'true'}");
La raison
L'écart résulte de la gestion différente des fichiers simples et guillemets doubles dans la syntaxe JSON Selon la norme JSON, les guillemets doubles sont considérés comme la norme pour les délimiteurs de chaînes, alors que les guillemets simples ne le sont pas.
Syntaxe JSON
Le JSON. La syntaxe spécifie que :
A value can be a string in double quotes, or a number, or true or false or null, or an object or an array. These structures can be nested.
Par conséquent, JavaScript peut analyser correctement les guillemets doubles lorsqu'il les utilise dans une chaîne JSON. Les guillemets simples ne sont pas considérés comme des délimiteurs de chaînes valides, ce qui empêche jQuery.parseJSON de convertir correctement les chaînes JSON.
Mise à jour
Il convient de noter qu'un problème similaire est survenu dans les discussions de la communauté jQuery concernant l'utilisation de guillemets simples dans les réponses JSON. Une façon de résoudre ce problème consiste à vous assurer que vous utilisez toujours des guillemets doubles dans la chaîne JSON.
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!