在浏览器中编写包含UTF-8字符字面量的JavaScript源代码是否安全?
例如,我想在字符串中使用省略号字面量:
var foo = "Oops… Something went wrong";
现代的浏览器是否支持这个功能?有没有发布的浏览器支持矩阵?
在浏览器中编写包含UTF-8字符字面量的JavaScript源代码是否安全?
例如,我想在字符串中使用省略号字面量:
var foo = "Oops… Something went wrong";
现代的浏览器是否支持这个功能?有没有发布的浏览器支持矩阵?
JavaScript是一种Unicode语言,因此字符串中的Unicode字符应该是安全的。您可以使用十六进制转义(\u8E24
)作为替代方法。确保您的脚本文件以适当的内容类型标头提供。
请注意,超出一到两个字节序列的字符存在问题,并且JavaScript正则表达式对第一个代码页以外的字符效果不佳。(或许不应该说“不佳”,但最多只能算是原始的。)
如果您想给朋友留下印象,则还可以在标识符中使用Unicode字母、Unicode组合标记和Unicode连接器标点字符。 因此,
var wavy﹏line = "wow";
这是完全良好的JavaScript代码(但是如果您找到一个不起作用的浏览器,请祝您好运解决错误)。
在规范中阅读更多信息,或者使用它来入睡 :)