JavaScriptの .charAt()および.charCodeAt()メソッドは、文字列の特定の位置にある文字や文字コードを取得するためのメソッドです。文字列操作の基礎としてよく使われるため、基本的な使い方や注意点をまとめていきたいと思います。
目次 非表示
charAt()は、指定したインデックス(位置)にある文字を返します。
HTML
文字列.charAt(インデックス);インデックス:取得したい文字の位置(0から始まる)- インデックスが範囲外(文字列の長さ以上)の場合は空文字
""を返す
HTML
const text = 'Cappuccino';
console.log(text.charAt(0)); // "C"
console.log(text.charAt(4)); // "u"
console.log(text.charAt(100)); // ""(範囲外のため空文字)JavaScript
const code = 65;
console.log(String.fromCharCode(code)); // "A"JavaScript
const text = 'Coffee';
for (let i = 0; i < text.length; i++) {
console.log(text.charAt(i));
}
// 出力: "C" "o" "f" "f" "e" "e"JavaScript
const char = 'A';
if (char.charCodeAt(0) >= 65 && char.charCodeAt(0) <= 90) {
console.log('大文字です');
} else {
console.log('小文字またはその他の文字です');
}JavaScript
const text = 'ABC';
const codes = [];
for (let i = 0; i < text.length; i++) {
codes.push(text.charCodeAt(i));
}
console.log(codes); // [65, 66, 67]charAt()は空文字""を返します。charCodeAt()はNaNを返します。
charCodeAt()は、基本的に1バイトの文字に対してのみ機能するため、サロゲートペアを含む文字(例: “𠮷”)では正しく取得できません。- サロゲートペアに対応するには
codePointAt()を使用することをおすすめします。
charAt()は指定した位置の文字を取得します。charCodeAt()は指定した位置の文字コードを取得します。- 範囲外のインデックスを指定すると
.charAt()は""、.charCodeAt()はNaNを返します。 - 絵文字やサロゲートペアを扱う場合は
codePointAt()を使用する。

