Maison >interface Web >js tutoriel >Comment décoder efficacement les entités HTML en JavaScript ?

Comment décoder efficacement les entités HTML en JavaScript ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-06 18:09:17448parcourir

How to Efficiently Decode HTML Entities in JavaScript?

Décodage des entités spéciales HTML : un guide complet

Lorsque vous travaillez avec des données JSON, il n'est pas rare de rencontrer des chaînes contenant des entités HTML spéciales, telles que comme 'pour une apostrophe. Le décodage de ces entités est crucial pour préserver le contenu prévu.

Approche JQuery

Une approche du décodage des entités HTML consiste à utiliser jQuery :

function decodeHtml(html) {
    return $('<div>').html(html).text();
}

Bien que cette méthode offre une solution rapide, elle est considérée comme hacky et peut ne pas fournir la solution la plus efficace ou la plus polyvalente. option.

Une méthode supérieure

Pour une approche plus fiable et plus polyvalente, considérez cette fonction :

function decodeHtml(html) {
    var txt = document.createElement("textarea");
    txt.innerHTML = html;
    return txt.value;
}

Avantages de cette Approche

  • Préserve les balises : Contrairement au jQuery approche, cette méthode conserve toutes les balises HTML, ce qui la rend adaptée à la gestion de contenus plus complexes.
  • Compatibilité entre navigateurs : Ce code est compatible avec tous les principaux navigateurs, garantissant des résultats cohérents sur différentes plates-formes. .
  • Sortie simplifiée : La sortie générée est exempte d'entités HTML, ce qui la rend prête pour un traitement ultérieur ou display.

Exemple

Considérez cette entrée contenant des entités HTML :

Entity:&amp;nbsp;Bad attempt at XSS:<script>alert('new\nline?')</script><br>

Lorsqu'elle est décodée à l'aide de la méthode ci-dessus, la sortie apparaît comme :

Entity: Bad attempt at XSS:<script>alert('new\nline?')</script><br>

Avec les entités HTML correctement décodées, cette approche fournit une solution fiable et polyvalente pour gérer les caractères spéciaux dans Données JSON.

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
Article précédent:Les Décorateurs en TypeScriptArticle suivant:Les Décorateurs en TypeScript