Maison > interface Web > js tutoriel > Pourquoi jQuery.parseJSON échoue-t-il sur les chaînes JSON avec des guillemets simples échappés ?

Pourquoi jQuery.parseJSON échoue-t-il sur les chaînes JSON avec des guillemets simples échappés ?

Susan Sarandon
Libérer: 2024-10-28 06:14:30
original
1014 Les gens l'ont consulté

Why Does jQuery.parseJSON Fail on JSON Strings with Escaped Single Quotes?

Erreur jQuery.parseJSON : JSON non valide en raison de guillemets simples échappés

Énoncé du problème

jQuery.parseJSON ne parvient pas à analyser les chaînes JSON contenant des guillemets simples échappés ('), ce qui entraîne une erreur « JSON non valide ». Ce problème survient lorsque les données JSON incluent des valeurs avec des guillemets simples qui sont correctement échappées.

Réponse

La spécification JSON officielle autorise uniquement les guillemets doubles pour placer des chaînes, pas des guillemets simples. . L'échappement des guillemets simples n'est pas pris en charge dans la grammaire JSON formelle.

Cette décision de conception simplifie l'analyse JSON et empêche la terminaison accidentelle d'une chaîne par des guillemets simples. Par conséquent, jQuery.parseJSON s'appuie sur les implémentations d'analyseur JSON sous-jacentes, qui adhèrent généralement à cette spécification et n'acceptent pas les guillemets simples.

Informations supplémentaires

  • Douglas Crockford, le créateur de JSON, met l'accent sur le principe de minimalisme et d'interopérabilité, qui a influencé l'exclusion des guillemets simples échappés.
  • Certaines implémentations JSON basées sur Java, telles que org.json, peuvent autoriser les guillemets simples, mais il n'est pas recommandé de s'appuyer sur cela.
  • Les analyseurs JSON natifs du navigateur suivent également la norme et n'acceptent pas les guillemets simples échappés.
  • jQuery.parseJSON utilise ces analyseurs natifs ou une bibliothèque JSON (json2 .js) si disponible, en le soumettant à leurs restrictions sur les guillemets simples.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal