3

例如,我有这个表情符号:


...我想得到你的字符代码。我试过这个:

var emoji = ""
var char_code = emoji.charCodeAt()
console.log(emoji,char_code)

但是当使用 String 的fromCharCode方法时,我没有得到原始的表情符号:

var emoji = ""
var char_code = emoji.charCodeAt()
var original = String.fromCharCode(char_code)
console.log(original)

如何从您的字符代码中获取原始表情符号?或者我怎样才能得到你的实际字符代码来使用它String.fromCharCode

4

1 回答 1

6

String.codePointAt()并且String.fromCodePoint()是为此而设计的,尽管也可以charCode在旧版浏览器中使用代理密钥对指定 UTF-16(请参阅此处的讨论)。

let emoji = "",
    charCode = emoji.charCodeAt(),
    codePoint = emoji.codePointAt();

console.log(
    'charCode:', charCode,
    String.fromCharCode(charCode)   // doesn't work =(
)

console.log(
    'codePoint:', codePoint,
    String.fromCodePoint(codePoint) // there we go!
);

于 2020-07-12T07:04:07.727 回答