JavaScriptのループ(繰り返し)処理の書き方【現役エンジニアが解説】
今回は、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より大きい間は関数を呼び続け、その返り値と引数を掛け合わせています。