结合 ES6 unicode 文字和 ES6 模板文字

Combining ES6 unicode literals with ES6 template literals

如果我想在ES6/ES2015javascript中打印一个unicode汉字,我可以这样做:

console.log(`\u{4eb0}`);

同样,如果我想将变量插入到模板字符串文字中,我可以这样做:

let x = "48b0";
console.log(`The character code is ${ x.toUpperCase() }.`);

但是,我似乎不能将两者结合起来打印一个列表,例如40个连续的unicode汉字。这不起作用:

for (let i = 0, firstCharCode = parseInt("4eb0", 16); i < 40; ++i) {
    let hexCharCode = (firstCharCode + i).toString(16);
    console.log(`\u{${ hexCharCode }}`); // generates SyntaxError
}

所以我想问一下是否有任何可能的方法。

您需要使用 String.fromCodePoint(),它接受数字和 returns 字符。

你不能用文字来做到这一点,因为......好吧......它不再是文字了。文字不能作为过程的结果产生,它们需要写成文字。