当我尝试使用字符串模板生成表情符号时,我收到错误。
如何达到这个目的?
Javascript代码:
const unifiedValue = '1F60E';
const emoji = `\u{${ unifiedValue }}`;
Javascript错误:
SyntaxError:模板中的转义序列无效
当然,如果我直接使用该值,它会起作用,但这容易出错+数千行代码,有数百if
个条件。
开发者控制台:
'\u{1F60E}'
控制台输出: “”
答案 0 :(得分:3)
使用fromCodePoint
功能。
这是一个令人讨厌的解决方案
const unifiedValue = '1F60E';
var emoji = `0x${unifiedValue}`;
emoji = String.fromCodePoint(emoji);
console.log(emoji);
另请注意,我们的“心爱的”互联网浏览器不支持它:/
修改强>
const unifiedValue = '1F60E';
var emoji = parseInt(unifiedValue, 16);
emoji = String.fromCodePoint(emoji);
console.log(emoji);
答案 1 :(得分:0)
我认为这里的问题是你用模板报价。您必须在模板引用中使用双反斜杠。
const emoji = `\u{${ unifiedValue }}`;
而不是这个
const emoji = `\\u{${ unifiedValue }}`;