表情符号 unicode 不会呈现为表情符号
Emoji unicode does not render into emoji
我有以下上下文,我想将图案转换为表情符号,但我看到的结果是 F600;
。代码 F600;
不会呈现为表情符号。
知道为什么吗?
$('#m').keyup(function (){ value = $('#m').val().replace(/(\:\))/g, 'F600;'); $('#m').val(value); });
我也尝试过 U+1F600
并且得到了相同的结果。
您缺少十六进制实体值的 'x',😀
要在 JavaScript 字符串中传递此表情符号,作为字符本身而不是作为 HTML 实体,您需要两个字符 -- JavaScript 字符串只能做 16-直接位代码点,因此超过 \uFFFF
的 Unicode 代码点必须分解为两个 16 位值,如下所示:
'\uD83D\uDE00'
这些被称为“surrogate pairs”。
或者,您也可以通过这种方式为表情符号创建一个表情:
String.fromCodePoint(0x1F600)
您甚至可以直接在代码中使用表情符号字符,只要您以兼容的编码(如 UTF-8)保存代码,并且您可以依靠将要使用的代码编辑器处理适当扩展的字符集。
我有以下上下文,我想将图案转换为表情符号,但我看到的结果是 F600;
。代码 F600;
不会呈现为表情符号。
知道为什么吗?
$('#m').keyup(function (){ value = $('#m').val().replace(/(\:\))/g, 'F600;'); $('#m').val(value); });
我也尝试过 U+1F600
并且得到了相同的结果。
您缺少十六进制实体值的 'x',😀
要在 JavaScript 字符串中传递此表情符号,作为字符本身而不是作为 HTML 实体,您需要两个字符 -- JavaScript 字符串只能做 16-直接位代码点,因此超过 \uFFFF
的 Unicode 代码点必须分解为两个 16 位值,如下所示:
'\uD83D\uDE00'
这些被称为“surrogate pairs”。
或者,您也可以通过这种方式为表情符号创建一个表情:
String.fromCodePoint(0x1F600)
您甚至可以直接在代码中使用表情符号字符,只要您以兼容的编码(如 UTF-8)保存代码,并且您可以依靠将要使用的代码编辑器处理适当扩展的字符集。