JavaScriptのループ(繰り返し)処理の書き方【現役エンジニアが解説】

PROGRAM

今回は、JavaScriptのループ(繰り返し)処理の書き方について、for文とwhile文に分け、簡単に解説していきます。

for文

for文はカウントアップ(ダウン)する機能も備えたループ処理です。

for文の括弧内ではカウンタ変数の初期値とループ条件式、カウンタ変数の変化方法を指定します。

for (var i=0;i<5;i++) {
    console.log((i+1)+"回目の出力です。");
}

上記のコードでは、カウンタ変数が0から4になるまでループを続け、ログに出力回数を出力しています。

while文

while文は、for文とは異なり、カウントアップ(ダウン)の機能がないループ処理です。

そのため、while文の括弧内にはループ条件式のみを指定し、カウンタ変数に関する設定は行えません。

var cnt = 0;
while (cnt<5) {
    console.log((cnt+1)+"回目の出力です。");
    cnt++;
}

上記のコードでは、カウンタ変数をwhile文の上で別に宣言し、0から4になるまでループを続け、ログに出力回数を出力しています。

再帰関数

ループ処理はfor文とwhile文以外に、再帰関数といって、関数を使ったループで行う方法もあります。

再帰関数では、条件に応じてではありますが、関数の中で関数を呼ぶため、一歩間違えれば無限ループの危険があります。

function getFactorial(num) {
    if(num > 0) {
        return num * getFactorial(num-1);
    }
    return 1;
}

console.log(factorial(5)); // "120"と出力

上記のコードでは、0と自然数の階乗の計算結果を求める関数を実装しており、引数が0より大きい間は関数を呼び続け、その返り値と引数を掛け合わせています。