如何从 JavaScript 中的表情符号获取真正的字符代码?

问题描述 投票:0回答:1

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

📝

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

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
中使用它?

javascript emoji fromcharcode
1个回答
8
投票

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

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

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

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

© www.soinside.com 2019 - 2024. All rights reserved.