Heim >Web-Frontend >js-Tutorial >Wie entkomme ich HTML-Sonderzeichen in JavaScript?

Wie entkomme ich HTML-Sonderzeichen in JavaScript?

DDD
DDDOriginal
2024-12-06 01:40:10339Durchsuche

How Do I Escape HTML Special Characters in JavaScript?

HTML-Sonderzeichen in JavaScript maskieren

Bei der Anzeige von Text in HTML mithilfe von JavaScript-Funktionen ist es wichtig, HTML-Sonderzeichen zu maskieren, um Fehler zu vermeiden unerwartetes Verhalten. Zu den Sonderzeichen, die Sie maskieren müssen, gehören & (kaufmännisches Und), < (weniger als), > (größer als), " (doppeltes Anführungszeichen) und ' (einfaches Anführungszeichen).

HTML-Sonderzeichen mit einer Funktion maskieren

Glücklicherweise bietet JavaScript eine einfache Möglichkeit um diese Sonderzeichen mit der folgenden Funktion zu maskieren:

function escapeHtml(unsafe) {
  return unsafe
    .replace(/&amp;/g, "&amp;amp;")
    .replace(/</g, "&amp;lt;")
    .replace(/>/g, "&amp;gt;")
    .replace(/&quot;/g, "&amp;quot;")
    .replace(/'/g, "&amp;#039;");
}

Diese Funktion verwendet eine unsichere Zeichenfolge als Eingabe und gibt eine maskierte Zeichenfolge zurück, indem sie alle Instanzen ersetzt von HTML-Sonderzeichen mit ihren maskierten Entsprechungen.

HTML-Sonderzeichen in modernen Browsern maskieren

Für moderne Webbrowser, die die Methode „replaceAll“ unterstützen, können Sie eine vereinfachte Version von verwenden die Escape-Funktion:

const escapeHtml = (unsafe) => {
  return unsafe
    .replaceAll("&amp;", "&amp;amp;")
    .replaceAll("<", "&amp;lt;")
    .replaceAll(">", "&amp;gt;")
    .replaceAll("&quot;", "&amp;quot;")
    .replaceAll("'", "&amp;#039;");
};

Durch die Verwendung dieser Funktionen können Sie HTML-Sonderzeichen sicher in Ihren JavaScript-Funktionen anzeigen und so sicherstellen, dass Ihr Inhalt korrekt und ohne Fehler gerendert wird irgendwelche Sicherheitsprobleme.

Das obige ist der detaillierte Inhalt vonWie entkomme ich HTML-Sonderzeichen in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn