JavaScript: if else if文で何もしない場合の書き方
JavaScritp の if else if 文で、条件によっては処理を 「何もしない」場合があります。
その場合は「; セミコロンのみ(空文)」を記述すると、 「何もしない(処理なし)」を実現できます。
「何もしない」のコード例
条件3のときに、「何もしない」を意味する空文を記述しています。
if (条件1) {
処理1;
} else if (条件2) {
処理2;
} else if (条件3) {
; // 何もしない
} else {
処理4;
}
上のように「;」セミコロンのみは「空文」を意味し、何も処理をしません。
空文を記述する場合は、コメントもあわせて記述しておくと、誰が読んでもわかりやすくなります。
空文を使用する際の注意点
if 文にうっかり「セミコロン」を記述すると、バグの原因になる場合があります。 その例を紹介します。
次のような if 文があるとします。
if (条件1)
処理1;
これは「条件1」が true なら「処理1」を実行するという意味です。
この if 文に、次のようにうっかり「空文」を記述してしまうとどうなるでしょうか?
if (条件1); // ここにうっかりセミコロンをつけてしまった
処理1;
この場合、条件1が true でも、後に続く文は「空文」ですから何もしません。
「処理1」は if 文とは関係なくなり、常に実行されてしまいます。
このように、うっかり「;」セミコロンを付けてしまうと、 空文と解釈されてバグの原因となるので注意が必要です。