有谁知道javascript如何处理unicode字符并判断它是无效的?
如附图所示,有人输入了<textarea>
中具有\ u2028字符的文本。
现在,当页面打开并响应时,会抛出错误。
我可以在编译时检查这些字符的文本吗?
我不能直接使用正则表达式,因为这样可以只保存一个字符或者不能使用unicode的分隔符或控制字符范围,因为我的应用程序是本地化的,我不想冒险通过提及来跳过数据范围的字符。
所以我想知道是否可以像运行时的javascript那样通过验证来检查字符串?
答案 0 :(得分:0)
我有类似的问题。我使用EJS生成html代码:
window.myState = <%- JSON.stringify(locals) %>
locals
包含导致语法错误的特殊字符。
作为一种解决方法,我已将其更改为:
window.myState = JSON.parse(`<%- JSON.stringify(locals) %>`)
这里的诀窍是使用 ES6模板字符串文字,不支持,例如在IE11中。