JavaScript | 文字列の長さを取得する(length プロパティ)

javascrpit JavaScript
スポンサーリンク

主な内容の要点

  1. length プロパティとは
     文字列(String オブジェクト/リテラル)の文字数を取得するためのプロパティ。
    書式は 文字列.length
  2. 内部表現と注意点
     JavaScript は文字列を UTF-16 で内部的に扱っており、多くの文字は 1 コードユニット(16 ビット)で表現される。
     length は「コードユニットの個数」を返すので、見かけ上「1 文字」に見えるものでも 2 を返すケースがある。
  3. サロゲートペアに関する問題
     サロゲートペア (surrogate pair) とは、1 文字を 2 つのコードユニットで表す文字(たとえば絵文字など)を指す。
     こうした文字を含む文字列に対して length を使うと、実際には「1 文字」でも length2 を返してしまう。
     例:let word = "●"; console.log(word.length); → 2 を返す場合あり。
  4. まとめ
     length プロパティで文字列長を取得できるが、「文字数」として正確に数えたいときはサロゲートペアを考慮する必要がある。
文字列.length
JavaScript
タイトルとURLをコピーしました