Maison > Article > interface Web > Comment puis-je analyser le JSON « détendu » sans utiliser « eval » ?
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);
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!