UTF-8 のバイト長を返す
コンピューターサイエンス理論 / 全 5 枚
コンピューターサイエンス理論 - UTF-8 のバイト長を返す
1 文字が 1 バイトとは限らない
文字数とバイト数は別のものです。英字は 1 文字 1 バイトですが、日本語は 1 文字で 3 バイトを使います。この違いを知らないまま長さを数えると、保存や通信の途中で足りなくなります。
この 3 個がどう区切られているのかを、次の図解で区切り線ごと見ます。
見た目は 1 文字でも、中身は 3 個の数字が並んでいます。
const bytes = new TextEncoder().encode("あ");
console.log(bytes.length); // 31 / 5
← → キーでも送れます