JavaScriptで文字列から文字を順番に取得する方法
JavaScriptで文字列から文字を順番に取得する方法について紹介します。
Array.prototype.forEach.call
JavaScriptで文字列から文字を順番に取得する方法として、Array.prototype.forEach.call
を使う方法があります。
この方法は、文字列を配列として扱い、"文字列".forEach
を呼び出すように振舞わせます。
Array.prototype.forEach.call('hello world', (s) => {
console.log(s);
});
出力結果
> "h"
> "e"
> "l"
> "l"
> "o"
> " "
> "w"
> "o"
> "r"
> "l"
> "d"
文字列を配列に変換して、配列の要素を順番に取得
この方法は、文字列を配列に変換して、配列の要素を順番に取得します。split()
メソッドを使って文字列を配列に変換し、forEach()
メソッドを使って配列の各要素に対して処理を行います。
Array.prototype.forEach.call
と似た仕組みですが、こちらの方がソースコードは理解しやすいです。
const str = "hello world";
const array = str.split(""); // 文字列を配列に変換.
array.forEach(char => {
console.log(char);
});
出力結果
> "h"
> "e"
> "l"
> "l"
> "o"
> " "
> "w"
> "o"
> "r"
> "l"
> "d"
charAt
for
ループとcharAt()
メソッドを組み合わせて1文字づつ取得できます。
let str = "hello world";
for (let i = 0; i < str.length; i++) {
let char = str.charAt(i);
console.log(char);
}
> "h"
> "e"
> "l"
> "l"
> "o"
> " "
> "w"
> "o"
> "r"
> "l"
> "d"