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中文网其他相关文章!