JavaScript: for文を使った配列のループ方法
JavaScriptでfor文を使って配列をループする方法はいくつかあります。以下に主な方法を紹介します。
1. 従来のfor文
最も基本的な方法です。インデックスを使って配列の要素にアクセスします。
const array = ['apple', 'banana', 'cherry'];
for (let i = 0; i < array.length; i++) {
console.log(array[i]);
}
2. for...of文
ES6で導入された構文で、配列の要素を直接取得できます。
const array = ['apple', 'banana', 'cherry'];
for (let item of array) {
console.log(item);
}
3. for...in文
オブジェクトのプロパティを列挙するために設計されていますが、配列にも使用できます。ただし、配列の場合は通常for...ofの方が適しています。
const array = ['apple', 'banana', 'cherry'];
for (let index in array) {
console.log(array[index]);
}
4. Array.forEach()メソッド
厳密にはfor文ではありませんが、配列をループする一般的な方法です。
const array = ['apple', 'banana', 'cherry'];
array.forEach((item, index) => {
console.log(item, index);
});
各方法の特徴と使い分け
- 従来のfor文:
- インデックスが必要な場合に便利
- ループを途中で終了させたい場合(break文を使用)に適している
- for...of文:
- シンプルで読みやすい
- 配列の要素だけが必要な場合に最適
- ループを途中で終了させることができる(break文を使用可能)
- for...in文:
- オブジェクトのプロパティをループする場合に主に使用
- 配列のインデックスが文字列として返される
- プロトタイプチェーン上の列挙可能なプロパティも含まれるため、配列には通常使用しない
- Array.forEach():
- 関数型プログラミングのスタイルに適している
- コールバック関数を使用するため、より複雑な処理を行いやすい
- ループを途中で終了させることはできない(break文は使用不可)
実際の使用ケースや個人の好みに応じて、適切な方法を選択してください。多くの場合、for...of
文やArray.forEach()
メソッドが読みやすく、使いやすいオプションとなります。