Maison > interface Web > js tutoriel > Comment puis-je analyser le JSON « détendu » sans utiliser « eval » ?

Comment puis-je analyser le JSON « détendu » sans utiliser « eval » ?

Susan Sarandon
Libérer: 2024-11-03 21:11:02
original
438 Les gens l'ont consulté

How Can I Parse

Analyser du JSON "détendu" sans recourir à l'évaluation

L'analyse de données JSON qui suivent une syntaxe "détendue" avec des clés non citées présente un défi, en particulier lorsque l'on vise à éviter le utilisation potentiellement dangereuse d'eval.

Une solution consiste à utiliser un remplacement d'expression régulière pour nettoyer le JSON chaîne. En remplaçant les paires clé-valeur non citées par leurs équivalents entre guillemets, nous pouvons créer une chaîne JSON qui adhère à la syntaxe standard.

Considérons l'exemple suivant :

var badJson = "{muh: 2}";

// Sanitize the JSON using regular expression
var correctJson = badJson.replace(/(['"])?([a-z0-9A-Z_]+)(['"])?:/g, '"": ');

// Now we can safely parse the corrected JSON
JSON.parse(correctJson);
Copier après la connexion

Cette approche nous permet de analysez les données JSON « détendue » sans compromettre la sécurité ni déclencher d'avertissements JSHint, offrant ainsi une alternative pratique et sûre à l'évaluation à des fins de test.

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