首頁 >web前端 >js教程 >如何在 JavaScript 中安全地轉義 HTML 特殊字元?

如何在 JavaScript 中安全地轉義 HTML 特殊字元?

Patricia Arquette
Patricia Arquette原創
2024-12-06 03:50:14801瀏覽

How Can I Safely Escape HTML Special Characters in JavaScript?

在 JavaScript 中轉義 HTML 特殊字元

在 Web 開發中,在 HTML 中顯示不受信任的文字可能會導致安全漏洞。為了防止這些問題,轉義可能幹擾 HTML 結構的特殊字元至關重要。 JavaScript 提供了多種方法來實現此目的。

一種方法是使用古老的 Replace() 函數,如以下程式碼片段所示:

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

對於現代瀏覽器,您可以利用ReplaceAll()函數以獲得更簡潔的解決方案:

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

透過實現這些轉義機制,您可以確保正確呈現不受信任的文本,並且安全地,最大限度地減少惡意攻擊的風險。

以上是如何在 JavaScript 中安全地轉義 HTML 特殊字元?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn