条件設定における「if」と「else if」の使い分けについて | デザインってオモシロイ -MdN Design Interactive-

条件設定における「if」と「else if」の使い分けについて

2026.4.21 TUE

【サイトリニューアル!】新サイトはこちらMdNについて


Webデザインには、あなたの知らない「落とし穴」がたくさん。大きなものから小さなものまで、それが及ぼす影響はさまざまだ。カンペキだと思っているあなたのサイトも、実はすでに暗い穴の中かも・・・。




条件設定における「if」と「else if」の使い分けについて



  「if」と「else if」の違いによる落とし穴を紹介する。ifは「もしも?ならば?」、else ifはifの条件が外れたあとの「だったらこの条件ならば?」のような意味である。

 ifは、【1】のようにifだけで構成した条件設定を1フレームで全部判断する。詳しくプログラムを追っていくと、変数「hensu」が「0」だったら「hensu」に「1」を入れる。変数「hensu」が「1」だったら「hensu」に「2」を入れる。と設定しているが、ifのみのこの場合、「0」だったら「1」、「1」だったら「2」と1フレーム上で連続で設定してしまうため、「hensu」が「0」だったとしても必ず「hensu」は「4」まで設定されてしまう。

 しかし、このとき【2】のようにelse ifを使っていると、変数「hensu」が「0」だったら「hensu」に「1」を入れる。この命令以降のelse ifは最初の条件が外れていれば実行という意味なので、無視してくれる。「hensu」は「1」のままで、次回この命令があらためて実行されると「hensu」が「1」なので、「2」を代入するという命令を実行し、またそれ以降のelse ifは無視してくれる。

 したがって、同じ変数で条件設定する場合は【2】、違う変数を同フレームで複数条件設定する場合は【1】の構成を使い分ける。今回のプログラムふたつには、「そうでなかったら?」のelseがないので、条件が当てはまらなかったら何もせずにスルーするということになる。

f (hensu==0) {
hensu = "1";
}
if (hensu==1) {
hensu = "2";
}
if (hensu==2) {
hensu = "3";
}
if (hensu==3) {
hensu = "4";
}
【1】ifのみのプログラム

if (hensu==0) {
hensu = "1";
} else if (hensu==1) {
hensu = "2";
} else if (hensu==2) {
hensu = "3";
} else if (hensu==3) {
hensu = "4";
}
【2】else ifを使ったプログラム

解説:横山 剛

(※本文中、及びキャプション内で使用している「<」、「>」は、全角になります。ご注意ください。)




twitter facebook このエントリーをはてなブックマークに追加 RSS
【サイトリニューアル!】新サイトはこちらMdNについて

この連載のすべての記事

アクセスランキング

8.30-9.5

MdN BOOKS|デザインの本

Pick upコンテンツ

現在