这段代码:
console.log('😀');
console.log('\uD83D\uDE00');
从HTML脚本标签:
😀
😀
冉粘贴到浏览器控制台(相同的浏览器)中:
😀
😀
这里发生的事情导致了第一个console.log('😀');包含在脚本标记中时失败,但是在浏览器控制台中运行时可以正常工作。明显的问题似乎是它没有被转换为代理对,因为第二行按预期工作。
最佳答案
您的HTML文件未以HTTP header 或HTML元标记发布的相同编码保存。文件使用错误的编码解释,导致错误的字符。这对于纯ASCII的Unicode转义序列无关紧要,对于非ASCII字面量也很重要。
具体的猜测:该文件另存为UTF-8,但广告为ISO-8859-1。