言語
日本語
English

Caution

お使いのブラウザはJavaScriptが無効になっております。
当サイトでは検索などの処理にJavaScriptを使用しています。
より快適にご利用頂くため、JavaScriptを有効にしたうえで当サイトを閲覧することをお勧めいたします。

JavaScript辞典

  1. トップページ
  2. JavaScript辞典
  3. 文字列.charAt() / at()

文字列.charAt() / at()

文字列の指定した位置にある文字を1文字返します。文字コードを取得したい場合は『文字列.charCodeAt()』を使用します。

構文

// 指定した位置の文字を取得します。
文字列.charAt(位置)

// 指定した位置の文字を取得します。負の値で末尾からの位置を指定できます。
文字列.at(位置)

// 指定した位置の文字のUTF-16コードを取得します。
文字列.charCodeAt(位置)

メソッド一覧

メソッド概要
charAt(位置)指定した位置の文字を返します。範囲外の場合は空文字『""』を返します。
at(位置)指定した位置の文字を返します。負の値を指定すると末尾からの位置として扱われ、範囲外の場合は『undefined』を返します。
charCodeAt(位置)指定した位置の文字のUTF-16コード(数値)を返します。範囲外の場合は『NaN』を返します。

サンプルコード

var str = "Hello";

// charAt で文字を取得します。
console.log(str.charAt(0)); // 『H』と出力されます。
console.log(str.charAt(4)); // 『o』と出力されます。
console.log(str.charAt(10)); // 範囲外のため空文字『』が出力されます。

// at で文字を取得します。負の値で末尾から指定できます。
console.log(str.at(0));  // 『H』と出力されます。
console.log(str.at(-1)); // 末尾の『o』と出力されます。
console.log(str.at(-2)); // 末尾から2番目の『l』と出力されます。

// charCodeAt で文字コードを取得します。
console.log(str.charCodeAt(0)); // 『H』のUTF-16コード『72』と出力されます。
console.log(str.charCodeAt(1)); // 『e』のUTF-16コード『101』と出力されます。

// ブラケット記法でも文字を取得できます。
console.log(str[0]);  // 『H』と出力されます。
console.log(str[-1]); // ブラケット記法では負の値は使えず『undefined』と出力されます。

概要

『文字列.charAt()』は指定した位置の文字を1つ返す基本的なメソッドです。同じ機能を持つ『文字列.at()』は負の値を指定できるため、末尾から文字を取得する場合に便利です。

ブラケット記法( str[0] )でも文字を取得できますが、負の値には対応していません。末尾の文字を取得したい場合は str[str.length - 1] と書く必要がありますが、『文字列.at(-1)』なら簡潔に記述できます。

『文字列.charCodeAt()』は文字のUTF-16コードを数値で返します。文字の比較や変換処理を行う場面で使用されますが、通常の文字取得では『文字列.charAt()』や『文字列.at()』を使うのが一般的です。

対応ブラウザ

Chrome Chrome
49 以降
全バージョンで対応しています
Firefox Firefox
57 以降
全バージョンで対応しています
Safari Safari
18 以降
全バージョンで対応しています
Edge Edge
80 以降
11 以前 ×
IE IE
11 以降
2 以前 ×
Opera Opera
48 以降
2 以前 ×
iOS Safari iOS Safari
18 以降
全バージョンで対応しています
Android Browser Android Browser
37 以降
4 以前 ×
Chrome Android Chrome Android
36 以降
17 以前 ×
Firefox Android Firefox Android
79 以降
3 以前 ×

記事の間違いや著作権の侵害等ございましたらお手数ですがまでご連絡頂ければ幸いです。