もし……

復習

1から10までの数を並べてみましょう。文字列中に `文字列 ${数式} 文字列` のようにして数式の値を出力する template literals という方法を使っています。

<p id="out1"></p>

<script>
  let s1 = "";
  for (let i = 1; i <= 10; i++) {
    s1 += `${i}<br>`;
  }
  document.getElementById("out1").innerHTML = s1;
</script>

偶数か奇数か

1から10までの数を並べ,偶数か奇数かも出力します。

<p id="out2"></p>

<script>
  let s2 = "";
  for (let i = 1; i <= 10; i++) {
    if (i % 2 == 0) {
      s2 += `${i} は偶数<br>`;
    } else {
      s2 += `${i} は奇数<br>`;
    }
  }
  document.getElementById("out2").innerHTML = s2;
</script>

i % 2i を2で割った余りです。等しいことの判断は == です。ここでは使っていませんが,等しくないことの判断は != です。

細かいことになりますが,JavaScriptには,より厳密に等しい・等しくないを判断する ===!== があります。例えば 0 == ""0 == "0" も真ですが,=== を使えば偽になります。文字列と数値を区別するときは === を使いましょう。

より複雑な判断

1から10までの数を並べ,偶数か奇数かも出力します。

<p id="out3"></p>

<script>
  let s3 = "";
  for (let i = 1; i <= 10; i++) {
    if (i % 2 == 0) {
      s3 += `${i} は偶数<br>`;
    } else if (i % 3 == 0) {
      s3 += `${i} は3の倍数<br>`;
    } else {
      s3 += `${i} はどちらでもない<br>`;
    }
  }
  document.getElementById("out3").innerHTML = s3;
</script>

FizzBuzz問題

1から100までの数を並べてください。ただし3の倍数なら数の代わりにFizz,5の倍数なら数の代わりにBuzz,両方の倍数なら数の代わりにFizzBuzzと出力してください。

1
2
Fizz
4
Buzz
Fizz
……
14
FizzBuzz
16
……

== と ===

JavaScript で「等しい」は ==,「等しくない」は != です。これら以外に,「型も含めて等しい」という意味の === とその否定 !== があります。例えば数値と文字列を比較する場合,3 == "3" ですが 3 === "3" ではありません。単純な数値どうしの比較ならどちらを使ってもかまいません。速さもほぼ互角です。