如查詢所示,PHP 的 htmlspecialchars 提供了一種在翻譯時對 HTML 特殊字元進行編碼的便捷方法。 JavaScript 中的對應函數將顯著簡化任務。
雖然 escape() 和encodeURI() 等內建函數無法如預期處理字元轉義,但還有其他可用的方法。
一種方法是建立一個替換特定字元的自訂函數:
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]; }); }
此實作使用JavaScript 物件將特殊字元對應到其轉義序列,利用正規則表達式的快速替換性能。
以上是如何使用內建或自訂函數在 JavaScript 中轉義 HTML 特殊字元?的詳細內容。更多資訊請關注PHP中文網其他相關文章!