0

如何更新以下代码以转义 JavaScript 数组中的 HTML 和字符串。我正在尝试使用一个函数escapeHtml来添加斜杠,但它不会按预期执行。谢谢

<!DOCTYPE html>
<html>
<body>


<p id="demo"></p>

<script>
function escapeHtml(unsafe)
{
    return unsafe
         .replace(/&/g, "&amp;")
         .replace(/</g, "&lt;")
         .replace(/>/g, "&gt;")
         .replace(/"/g, "&quot;")
         .replace(/'/g, "&#039;");
 }
var unsafe = ["car's", "<h1>hello</h1>", "Ref#1", "a-b", "he said "hello" to him"];
document.getElementById("demo").innerHTML = escapeHtml(unsafe);
</script>

</body>
</html>
4

1 回答 1

2

您必须为数组中的每个元素调用 escapeHtml:

document.getElementById("demo").innerHTML = unsafe.map(a => escapeHtml(a));
于 2021-11-11T22:21:38.043 回答