unicode 字符未出现在 html
chars by unicode not appear on html
我试图用 javascript 获取“”表情符号的 Unicode,但当我尝试将其添加为 HTML 时却没有出现,很多表情符号都没有出现
var x="A".charCodeAt(0);
document.write(x); // gaves 65
A
给了A
var y="".charCodeAt(0);
document.write(y); // gaves 55358
�
没给
这是什么原因?
这个表情符号:有一个十进制 (dec) 参考 129300。如果你想让它显示在你的 HTML 试试这个:
<p>🤔</p>
有关 dec 参考的完整列表,请访问 w3schools' website。
JavaScript中的字符(或代码点)由代码单元组成。有时,一个代码点由一个代码单元组成。例如,“a”的代码点由一个代码单元(97 或 0x61)组成。然而,其他代码点由两个代码单元(称为代理项对)组成,它们一起工作以形成单个字符。例如,您在问题中分享的 Thinking Face emoji () 由两个代码单元组成,当它们配对在一起时形成一个代码点以形成 thinking face emoji。你可以通过取 .length
来看到它:
console.log("".length); // 2 (as made up of two code points)
console.log("".charCodeAt(0)); // 55358 or 0xD83E
console.log("".charCodeAt(1)); // 56596 or 0xDD14
当您使用 .charCodeAt()
时,您正在访问字符串元素的 代码单元 。如上所示,""
包含两个代码单元,0xD83E (55358) 和 0xDD14 (56596)。 .charCodeAt(0)
返回的第一个代码单元只有在与其他代码单元一起使用时才有意义,因此它不能独立工作,这就是为什么你在结果中得到替换字符符号 (�) 的原因:
console.log(""[0], ""[1]); // � �
而不是使用通过.chartCodeAt()
获得的单个代码单元,您可以显示整个代码点(即:字符),可以使用.codePointAt()
:
获得
console.log("".codePointAt(0)); // 129300 or 0x1F914
然后,您可以将此号码用作 HTML 实体:
<p>🤔</p>
我试图用 javascript 获取“”表情符号的 Unicode,但当我尝试将其添加为 HTML 时却没有出现,很多表情符号都没有出现
var x="A".charCodeAt(0);
document.write(x); // gaves 65
A
给了A
var y="".charCodeAt(0);
document.write(y); // gaves 55358
�
没给
这是什么原因?
这个表情符号:有一个十进制 (dec) 参考 129300。如果你想让它显示在你的 HTML 试试这个:
<p>🤔</p>
有关 dec 参考的完整列表,请访问 w3schools' website。
JavaScript中的字符(或代码点)由代码单元组成。有时,一个代码点由一个代码单元组成。例如,“a”的代码点由一个代码单元(97 或 0x61)组成。然而,其他代码点由两个代码单元(称为代理项对)组成,它们一起工作以形成单个字符。例如,您在问题中分享的 Thinking Face emoji () 由两个代码单元组成,当它们配对在一起时形成一个代码点以形成 thinking face emoji。你可以通过取 .length
来看到它:
console.log("".length); // 2 (as made up of two code points)
console.log("".charCodeAt(0)); // 55358 or 0xD83E
console.log("".charCodeAt(1)); // 56596 or 0xDD14
当您使用 .charCodeAt()
时,您正在访问字符串元素的 代码单元 。如上所示,""
包含两个代码单元,0xD83E (55358) 和 0xDD14 (56596)。 .charCodeAt(0)
返回的第一个代码单元只有在与其他代码单元一起使用时才有意义,因此它不能独立工作,这就是为什么你在结果中得到替换字符符号 (�) 的原因:
console.log(""[0], ""[1]); // � �
而不是使用通过.chartCodeAt()
获得的单个代码单元,您可以显示整个代码点(即:字符),可以使用.codePointAt()
:
console.log("".codePointAt(0)); // 129300 or 0x1F914
然后,您可以将此号码用作 HTML 实体:
<p>🤔</p>