首頁 > web前端 > js教程 > 如何在 JavaScript 中實作 PHP 的 htmlspecialchars 的等效功能?

如何在 JavaScript 中實作 PHP 的 htmlspecialchars 的等效功能?

DDD
發布: 2024-12-03 02:06:13
原創
211 人瀏覽過

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

JavaScript 相當於PHP 的htmlspecialchars

在JavaScript 中,沒有直接類似於PHP 的htmlspecialchars 的功能內建函數用於將HTML 特殊字元轉換為字元實體。但是,有一些自訂解決方案可以實現類似的結果。

自訂實作

一種方法是定義一個自訂函數來手動翻譯每個特殊字元。例如:

function escapeHtml(text) {
  return text
      .replace(/&/g, "&")
      .replace(/</g, "<")
      .replace(/>/g, ">")
      .replace(/"/g, "&quot;")
      .replace(/'/g, "&apos;");
}
登入後複製

此函數將字串作為輸入,並將所有出現的以下字元替換為對應的字元實體:

  • & - &
    • >
  • " - "
  • ' - '

改善性能

為了獲得更好的性能,特別是對於大文本,您可以使用稍微優化的版本:

function escapeHtml(text) {
  var map = {
    '&': '&amp;',
    '<': '<',
    '>': '>',
    '"': '&quot;',
    "'": '&apos;'
  };
  
  return text.replace(/[&<>"']/g, function(m) { return map[m]; });
}
登入後複製

此版本使用查找表來儲存字元實體映射,其中消除了多次替換操作的需要。

以上是如何在 JavaScript 中實作 PHP 的 htmlspecialchars 的等效功能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板