Maison  >  Article  >  interface Web  >  Comment échapper efficacement aux balises HTML en tant qu'entités HTML dans Swift ?

Comment échapper efficacement aux balises HTML en tant qu'entités HTML dans Swift ?

DDD
DDDoriginal
2024-11-07 08:20:03119parcourir

How to Efficiently Escape HTML Tags as HTML Entities in Swift?

Méthodes rapides pour échapper aux balises HTML en tant qu'entités HTML

Échapper les balises HTML en tant qu'entités HTML est une tâche courante dans le développement Web, en particulier lors de la désinfection du contenu soumis par les utilisateurs. Bien que la fonction fournie offre une approche simple, elle n'est peut-être pas la plus efficace pour traiter de gros volumes de chaînes.

Techniques alternatives :

Une alternative consiste à tirer parti de la Mécanismes intégrés du DOM pour échapper au HTML. Ceci peut être réalisé grâce à la fonction suivante :

<code class="javascript">var escape = document.createElement('textarea');
function escapeHTML(html) {
    escape.textContent = html;
    return escape.innerHTML;
}</code>

Cette fonction utilise un élément HTML dédié pour effectuer l'échappement, ce qui peut être plus rapide que l'utilisation d'expressions régulières pour de grandes quantités de données. Cependant, il est important de noter que cela peut ne pas être aussi efficace pour les chaînes courtes.

De plus, pour les situations où la vitesse est primordiale, il peut être acceptable d'omettre l'échappement du signe supérieur à (> ). Cela impliquerait de modifier la fonction escapeHTML comme suit :

<code class="javascript">function escapeHTML(html) {
    escape.textContent = html;
    return escape.innerHTML.replace(/>/g, '>');
}</code>

Considérations relatives aux performances :

Le choix de la méthode dépend du cas d'utilisation spécifique et des exigences de performances. L'approche des expressions régulières convient aux petites chaînes ou à une utilisation occasionnelle, tandis que la méthode basée sur DOM offre de meilleures performances à grande échelle. La version modifiée avec le signe supérieur à omis sacrifie la précision au profit de la vitesse.

Utilisation :

Pour échapper une chaîne à l'aide de la méthode basée sur DOM :

<code class="javascript">var escapedHtml = escapeHTML(unsafeHtml);</code>

Pour annuler l'échappement du code HTML échappé, la fonction suivante peut être utilisée :

<code class="javascript">function unescapeHTML(html) {
    escape.innerHTML = html;
    return escape.textContent;
}</code>

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