Javascript charCodeAt 和 fromCharCode 没有返回相同的值

Javascript charCodeAt and fromCharCode not returning the same value

我有一个适用于特定字体的 Unicode 字符。

我需要获取该字符的代码,加 8,然后将其转换回字符串。

这是有效的 python 代码:

char = ""
char == chr(ord(char)) # True

然而,在Javascript中,使用匹配函数,它不能正确地转换回来:

const char = "";
char == String.fromCharCode("".charCodeAt(0)) // false

当你使用来自Unicode星界的字符时,这就是你需要的:

const char = "";
console.log(char === String.fromCodePoint("".codePointAt(0)));

另请参阅:

The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)

What every JavaScript developer should know about Unicode

JavaScript has a Unicode problem

Unicode-aware regular expressions in ES2015

ES6 Strings (and Unicode, ❤) in Depth

JavaScript for impatient programmers. Unicode – a brief introduction