
文字コードと UTF-8 / Unicode の基礎 - 文字化けの原因と、length が合わない理由
約11分
文字コードを実務目線で整理します。Unicode(文字集合・コードポイント)と UTF-8/UTF-16(符号化方式)の違い、UTF-8 の可変長バイト構造、JavaScript の文字列が UTF-16 ベースゆえに String.length が見た目の文字数と合わない理由、結合文字・絵文字・正規化(NFC/NFD)、そして文字化けの典型原因(エンコーディング不一致・MySQL の utf8 と utf8mb4・BOM・meta charset)と対策まで、Unicode 公式・RFC 3629・WHATWG を一次ソースにまとめます。