Maison > Article > interface Web > Comment puis-je échapper aux caractères spéciaux HTML dans JavaScript à l'aide de fonctions intégrées ou personnalisées ?
Comme l'enquête le suggère, les htmlspecialchars de PHP fournissent un moyen pratique d'encoder les caractères spéciaux HTML lors de la traduction. Une fonction correspondante en JavaScript simplifierait considérablement la tâche.
Bien que les fonctions intégrées telles que escape() et encodeURI() ne gèrent pas l'échappement des caractères comme prévu, il existe des alternatives disponibles.
Une approche consiste à créer une fonction personnalisée qui remplace des caractères spécifiques :
function escapeHtml(text) { return text .replace(/&/g, "&amp;") .replace(/</g, "&lt;") .replace(/>/g, "&gt;") .replace(/"/g, "&quot;") .replace(/'/g, "&#039;"); }
Cette fonction parcourt le texte saisi et remplace les caractères spéciaux par leurs équivalents codés en HTML.
Une version optimisée en termes de performances, adaptée à un traitement de texte étendu :
function escapeHtml(text) { var map = { '&': '&amp;', '<': '&lt;', '>': '&gt;', '"': '&quot;', "'": '&#039;' }; return text.replace(/[&<>"']/g, function(m) { return map[m]; }); }
Cette implémentation utilise un objet JavaScript pour mapper les caractères spéciaux à leurs séquences d'échappement, en tirant parti des performances de remplacement rapide des expressions régulières.
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!