単純にfor文でやる
var arr = ["hoge", "fuga", "piyo"]; for( var i=0 ; i < arr.length; i++){ console.log(arr[i]); }
hoge fuga piyo
配列に対して反復するときは、数値的な添え字を用いた伝統的な for ループを使うほうがよいのです
と記述があるのでこれが一番いいらしい。
for…in は適さないのはなぜか
- for…in は、指定したオブジェクトのプロパティに対して順不同で反復処理をする
- 配列に使用するには、数値順に参照しない可能性もあるし、ユーザー定義のプロパティの名前も返すから適さない
var arr = ["hoge", "fuga", "piyo"]; arr.foo = "hogeee"; for( var i in arr){ console.log(arr[i]); }
hoge fuga piyo hogeee
for…of もある
- for…in に似てるけど、プロパティの名前ではなく値を返す
var arr = ["hoge", "fuga", "piyo"]; for(var value of arr){ console.log(value); }
hoge fuga piyo
- また、 iterable objects にしか使えないらしい?
var arr = ["hoge", "fuga", "piyo"]; arr.foo = "hogeee"; for(var value of arr){ console.log(value); }
hoge fuga piyo
(arr.foo は返されない)