3.7 コンソールでモンスターを倒せ! 《繰り返し(while)、代入演算子》 【JavaScript超入門】
JavaScriptの学習メモ。
今日は『確かな力が身につくJavaScript「超」入門』の第3章を読んでみます。
3.7 繰り返し while
(p.102)
前節ではfor文を使用しました。この実習ではもうひとつの繰り返し、while文を使用します。
whileの意味
発音記号・読み方 /(h)wάɪl(米国英語), wάɪl(英国英語)/
接続詞
…する間,…するうち,…と同時に
【用法】 「動作や状態の継続している時間[期間]」を表わす副詞節をつくる; while の節中に進行形が多く用いられる;
We kept watch while they slept. 彼らが眠っている間私たちは見張りをした.
whileは 「~する間」を意味し、発音はカタカナで書くと「ワイル」です。
アメリカ英語では、「(ホ)ワイル」(ホは弱い発音)とも発音するようです。
構文
- while 文は、テスト条件が true に評価される間、指定された文を実行するループを作成します。
- 条件は文を実行する前に評価されます。
サンプルコード
「index.html」というファイルを作り、以下の内容を書きます。
実行結果
「index.html」をChromeで開いて、コンソール画面を出します。
以下のような実行結果になりました。
「while」文によって、変数enemy(モンスターの体力)が0以上の間、攻撃(enemy -= attack; で減らす)が繰り返し実行されていることが分かります。
for文とwhile文の違い
その違いとは、「繰り返しの回数が初めから決まっているかどうか」です。
- for文は、繰り返しの回数があらかじめ確定しているときに使いやすい
- while文は、繰り返しの回数があらかじめ確定していないときに使いやすい
while文のカウンター
while文で、繰り返しの回数をカウントしたい場合は、カウンターの変数を別途用意しておきます。
→ whileのループを繰り返すたびに、カウントアップ(+1)すればOK
14回繰り返し。合計値は105
無限ループに気をつけて!
(p.108)
for文もwhile文も、条件式がtrueになるかぎり、延々と繰り返しを実行し続けます。
もし、プログラムを打ち間違えるか考え違いをして、常にtrueにしかならない条件式を書いてしまうと大変です。
繰り返し処理が止まらなくなるため、ブラウザが一切の反応を受けつけなくなることがあります。
ブラウザが反応しなくなったときは、強制終了するしかありません。
代入演算子
通常の演算を短縮した代入演算子があり、以下の表に示します。
名称 | 短縮表記した演算子 | 意味 |
---|---|---|
代入 | x = y |
x = y |
加算代入 | x += y |
x = x + y |
減算代入 | x -= y |
x = x - y |
乗算代入 | x *= y |
x = x * y |
除算代入 | x /= y |
x = x / y |
剰余代入 | x %= y |
x = x % y |
と呼ばれています。
この2つの式は同じ計算になります。
代入演算子を使うと、
- 入力する文字数を減らせる
- 入力ミスを減らせる
というメリットがあります。
逆に言えば、大したメリットでもないので、慣れないうちはわざわざ使わなくてもOK
まとめ
- 繰り返し回数が確定しているときは、for文でOK
- 繰り返し回数が確定していないときは、while文でOK
- 無限ループにならないように条件を注意!
- 加算代入演算子「+=」なども使うと、コーディングがちょっと楽になる?
確かな力が身につくJavaScript「超」入門 (確かな力が身につく「超」入門シリーズ)
- 作者: 狩野祐東
- 出版社/メーカー: SBクリエイティブ
- 発売日: 2015/10/30
- メディア: 単行本
- この商品を含むブログを見る