パーサコンビネータ を作っていたとき, 最近流行りの (?) 絵文字が変数名として使えるような言語を作る場合に, 正しくコード中の扱うにはどうしたら良いかなどを考えていたら, Unicode と JavaScript の文字列に関する理解が得られたので, ここに共有します. とはいえ, JavaScript の文字列がどう表現され, どう扱われるのかについてが主で, それ以外, 例えば正規化については紹介すらできていませんのでご了承ください (気が向いたら追記するかも). Unicode について JavaScript の文字列について説明する前に, ざっくり Unicode の仕組みや用語を抑えておきます. Unicode は文字集合 (character set) や, 以下に挙げるような符号化方式などを定義した文字コードの規格 文字集合中の文字は符号位置 (code point) と