JavaScript 等價於 PHP 的 htmlspecialchars
確定是否存在與 PHP 的 htmlspecialchars 等價的 JavaScript 函數可能是一個挑戰。然而,另一種方法是為此目的定義一個自訂函數。
HTML 字元轉義的自訂函數
雖然JavaScript 沒有專門提供內建函數對於HTML 字元轉義,以下自訂函數可以滿足此需求:
function escapeHtml(text) { return text .replace(/&/g, "&amp;") .replace(/</g, "&lt;") .replace(/>/g, "&gt;") .replace(/"/g, "&quot;") .replace(/'/g, "&#039;"); }
此函數接受字串作為輸入,並將以下特殊字元替換為其等效的HTML 字元實體:
→ >
性能優化
為了提高效能,特別是對於大文字區塊,可以使用該函數的以下修改版本:
function escapeHtml(text) { var map = { '&': '&amp;', '<': '&lt;', '>': '&gt;', '"': '&quot;', "'"': '&#039;' }; return text.replace(/[&<>"']/g, function(m) { return map[m]; }); }
此版本建立一個雜湊表(映射) 將特殊字元對應到其對應的實體,然後使用Replace() 方法執行替換。
以上是是否有與 PHP 的 `htmlspecialchars()` 等效的 JavaScript?的詳細內容。更多資訊請關注PHP中文網其他相關文章!