[JavaScript]配列(Array)を逆順でforループするには?

JavaScript

どうも、ちょげ(@chogetarou)です。

配列(Array)を逆順でforループする方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

配列(Array)を逆順でforループする方法は、2つあります。

lengthプロパティ

1つは、lengthプロパティを使う方法です。

まず、for文のループ変数をlengthプロパティで「-1」した値で初期化します。

for文の条件式には変数が0以上、増減式で変数を「-1」します。

for (var i = numbers.length - 1; i >= 0;i--) {
    //ループ処理
    //変数「i」でインデックスを取得
}

上記のforループは、配列のインデックスを逆順でループします。

使用例

const numbers = [1, 2, 3, 4, 5];

for (var i = numbers.length - 1; i >= 0;i--) {
    console.log(numbers[i]);
}
出力:
5
4
3
2
1

reverse()

もう1つは、reverse()を使う方法です。

まず、for文の()内でofの左辺に変数、ofの右辺に配列からslice().reverse()を呼び出した結果を指定します。

そして、for文の{}内にループ処理を指定します。

for (var item of array.slice().reverse()) {
    //ループ処理
}

上記のfor文は、slice().reverse()を呼び出した配列を逆順でループします。

使用例

const numbers = [1, 2, 3, 4, 5];

for (var num of numbers.slice().reverse()) {
    console.log(num);
}
出力:
5
4
3
2
1
スポンサーリンク

まとめ

配列(Array)を逆順でforループする方法は、次の2つです。

  • lengthプロパティを使う方法
  • reverse()を使う方法

コメント

タイトルとURLをコピーしました