くり返しとデータの持ち方

INPUT · スライド

while文で繰り返す

01 / 06

同じ行を並べるのはつらい

1 から 5 まで表示したいだけなのに、console.log を5行書くのは手間だよね。100 までならもう無理。

コンピュータが得意なのは、こういう同じことを何度もやる作業。まかせてしまおう。

02 / 06

while の形

while (条件) { 処理 } と書くと、条件が成り立つあいだ { } の中がずっと繰り返される。

条件が成り立たなくなった時点で、繰り返しは終わって次の行に進むよ。

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

実行結果

1
2
3

03 / 06

動きを1周ずつ追う

上のコードは次の順で動いているよ。

  • i1。条件 1 <= 3 は成り立つ → 1 を表示して i2
  • 条件 2 <= 3 は成り立つ → 2 を表示して i3
  • 条件 3 <= 3 は成り立つ → 3 を表示して i4
  • 条件 4 <= 3 は成り立たない → 終わり

毎周のはじめに条件を見に行くのがポイントだよ。

04 / 06

更新を忘れると終わらない

さっきのコードから i++ を消すとどうなるだろう。i はずっと 1 のままなので、条件 i <= 3 はいつまでも成り立つ。

つまり永遠に終わらない。これを無限ループと呼ぶよ。画面が固まったらこれを疑おう。

while を書いたら、条件に使っている変数を { } の中で必ず動かす。これだけ覚えておけば大丈夫。

05 / 06

減らしながら回すこともできる

増やすだけじゃなく、減らして条件を成り立たなくする書き方もある。

大事なのは「条件がいつか成り立たなくなること」だよ。

let count = 3;while (count > 0) {  console.log(count);  count--;}console.log("スタート");

実行結果

3
2
1
スタート

06 / 06

合計をためる

繰り返しのに変数を用意して、{ } の中で足していくと合計が求められる。

この「ためる変数」の形はこれからずっと出てくるので、ここでしっかり手を動かしておこう。

let i = 1;let total = 0;while (i <= 5) {  total += i;  i++;}console.log(total);

実行結果

15