ちょっとディープな生物の世界

【JavaScript】while・forを使った繰り返し処理

whileで繰り返す

while()は()内の条件式がtrueになるまで{}内の処理を繰り返します。

let i = 1;
while (i < 10){
  console.log(i);
  i += 1;
}

forで繰り返す

for()はwhileと似ていますが、シンプルに書くことができます。for(変数の定義; 条件式; 変数の更新)の順に()内を埋めていきます。for()内の最後は;必要ありません。

for(let i = 1; i < 10; i += 1){
  console.log(i);
}

計算式を省略して書く

i+=1はi++、i -=1はi–と書くこともできます。

for(let i = 1; i < 10; i++){
  console.log(i);
}

forとifを組み合わせて使う

条件式を組み合わせて使うことも可能です。下のコードでは2の倍数の時(2で割った余りが0の時)、「2の倍数です」と表示するようにしています。

for(let i = 1; i < 10; i++){
  if(i%2 === 0){
  console.log("2の倍数です")
  }else{
  console.log(i);
  }
}

なぜ変数名に「i」を使うの?

通常、変数名には一文字を使わないことが原則です。しかし、プログラミングの慣習として繰り返しの制御には変数名に「i」を使うこととなっています。

whileを使った簡単なゲーム作り

whileを使ってenemyの値が0以下になるまで攻撃を繰り返します。0以下になったら、whileが解除されます。

let enemy = 100;
 
 while(enemy > 0){
   const attack = window.confirm("戦う");
   if(attack === true){
      const damage = Math.floor(Math.random()*30);
      enemy -=damage;
      window.alert(`敵に${damage}のダメージ!!`);
   }else break;
    //キャンセルを押した場合にはwhileからbreakします。
}
 if(enemy <0 ){
      window.alert("敵を倒した!!")
      }else{
      window.alert("敵から逃げ去った!!")
      }

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です