我有一个表单,用户可以在其中注册并创建一个帐户,任何特殊字符都可以像这样 business: "Jack's Cereal Shack"
(Jack's Cereal Shack) 保存到我的 mongoDB 中。这很好,我理解为什么它在我的 mongoDB 中看起来是这样,但是我无法转义 ejs
中的特殊字符。
我所遇到的一切都说只使用 <%- %>
,所以我尝试使用 <%- business %>
并显示 Jack&
。就是这样。
谁能看出我做错了什么?感谢您的关注 =)
答案 0 :(得分:0)
您可以解码 #x27;
十六进制字符代码。
const business = 'Jack's Cereal Shack';
const REG_HEX = /&#x([a-fA-F0-9]+);/g;
function decodeHex(val) {
return val.replace(REG_HEX, function (match, group1) {
const num = parseInt(group1, 16); //=> 39
return String.fromCharCode(num); //=> '
});
}
const businessDecoded = decodeHex(business);
console.log(businessDecoded); //=> Jack's Cereal Shack