Maison > interface Web > js tutoriel > Comment obtenir l'équivalent des caractères htmlspecialchars de PHP en JavaScript ?

Comment obtenir l'équivalent des caractères htmlspecialchars de PHP en JavaScript ?

DDD
Libérer: 2024-12-03 02:06:13
original
207 Les gens l'ont consulté

How to Achieve the Equivalent of PHP's htmlspecialchars in JavaScript?

JavaScript équivalent aux htmlspecialchars de PHP

En JavaScript, il n'existe pas de fonction intégrée directement analogue aux htmlspecialchars de PHP pour convertir les caractères spéciaux HTML en entités de caractères. Cependant, il existe des solutions personnalisées qui peuvent obtenir un résultat similaire.

Implémentation personnalisée

Une approche consiste à définir une fonction personnalisée qui traduit manuellement chaque caractère spécial. Par exemple :

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

Cette fonction prend une chaîne en entrée et remplace toutes les occurrences des caractères suivants par leurs entités de caractères correspondantes :

  • & - &
  • < - <
    • >
  • " - "
  • ' - '
  • Amélioré Performances

    Pour de meilleures performances, notamment avec des textes volumineux, vous pouvez utiliser une version légèrement optimisée :

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

    Cette version utilise une table de recherche pour stocker les mappages d'entités de caractères, qui élimine le besoin de plusieurs opérations de remplacement.

    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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal