我正在尝试从Unicode获取表情符号,所有Unicode都返回表情符号,但只有国家旗帜表情符号不返回表情符号,它返回表情符号名称的第一个字母。
下面是我的代码:
String.fromCodePoint(parseInt('1f1fa-1f1f8', 16)) // ?此代码返回的是?而不是??
但如果我使用其他表情符号代码,而不是标志表情符号代码,它是有效的。String.fromCodePoint(parseInt('1f61b', 16)) //?此代码返回正确的表情符号
有谁能帮帮我吗?
发布于 2018-08-03 03:21:51
parseInt('1f1fa-1f1f8', 16)正在返回与parseInt('1f1fa', 16)相同的127482
因此,为了解决这个问题,您可以用连字符(-)将它们分开
var c = '1f1fa-1f1f8'.split('-')
.map(i => parseInt(i,16))
String.fromCodePoint(...c) // us发布于 2018-08-03 03:18:37
试试String.fromCodePoint(parseInt('1f1fa', 16), parseInt('1f1f8', 16))
parseInt只返回第一个字节,而不是两个字节。据我所知,parseInt一次只能解析一个值。
https://stackoverflow.com/questions/51660661
复制相似问题