Maison > interface Web > js tutoriel > Comment puis-je échapper aux caractères spéciaux HTML dans JavaScript à l'aide de fonctions intégrées ou personnalisées ?

Comment puis-je échapper aux caractères spéciaux HTML dans JavaScript à l'aide de fonctions intégrées ou personnalisées ?

Patricia Arquette
Libérer: 2024-11-19 04:31:02
original
200 Les gens l'ont consulté

How Can I Escape HTML Special Characters in JavaScript Using Built-In or Custom Functions?

Échapper aux caractères spéciaux HTML avec les fonctions intégrées de JavaScript ?

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.

Personnalisée Implémentation

Une approche consiste à créer une fonction personnalisée qui remplace des caractères spécifiques :

function escapeHtml(text) {
  return text
      .replace(/&/g, "&")
      .replace(/</g, &quot;&amp;lt;&quot;)
      .replace(/>/g, &quot;&amp;gt;&quot;)
      .replace(/&quot;/g, &quot;&amp;quot;&quot;)
      .replace(/'/g, &quot;&amp;#039;&quot;);
}
Copier après la connexion

Cette fonction parcourt le texte saisi et remplace les caractères spéciaux par leurs équivalents codés en HTML.

Version optimisée

Une version optimisée en termes de performances, adaptée à un traitement de texte étendu :

function escapeHtml(text) {
  var map = {
    '&amp;': '&amp;amp;',
    '<': '&amp;lt;',
    '>': '&amp;gt;',
    '&quot;': '&amp;quot;',
    &quot;'&quot;: '&amp;#039;'
  };
  
  return text.replace(/[&amp;<>&quot;']/g, function(m) { return map[m]; });
}
Copier après la connexion

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!

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