http://www.unicode.org/
Unicode Technical Reports
http://www.charbase.com/
Unicode的 U+D800 U+DFFF 不占用字符
U+010000 ~ U+10FFFF - ES6:
\uD83D \uDCA9
==
\u{1F4A9}
H = Math.floor((C - 0x10000) / 0x400) + 0xD800
L = (C - 0x10000) % 0x400 + 0xDC00
C = (H - 0xD800) * 0x400 + L - 0xDC00 + 0x10000
JavaScript’s internal character encoding: UCS-2 or UTF-16? - https://mathiasbynens.be/notes/javascript-encoding