今回はオン、オフを表す「true」「false」についてまとめました。

フラグとは
~Crebitテキストより~
フラグとは、ある条件が「オン」または「オフ」の状態であることを示すための変数です。
プログラムの中で、何かの状態や選択を「記録」する役割を果たします。
たとえば、ユーザーがログインしているかどうかをチェックする際に「ログイン中」というフラグを使うことで、簡単にその状態を管理できます。
具体的には、フラグはtrueまたはfalseの値を持ち、特定の条件が成立していればtrue、成立していなければfalseを設定します。
この値をもとに、プログラムが次にどんな処理を行うかを決定するのです。
trueとfalseについて
値そのものがtrueやfalseと同等に扱われるものがあります。
falseとして扱われるものの値は、以下のものがあります。
false
0
-0
“”(空文字)
Null
Undefined
NaN
falseそのものは、もちろんfalseとなりますが、0やNull、Undefinedなど、「空である」「未定義である」といったものを、falseとして評価されます。
falseとして扱われるもの以外はtrueです。
数字では0以外はtrueになります。
どんな時に使うの?
フラグは「はい/いいえ」「オン/オフ」「ある/ない」といった二択の状態を管理したいときによく使います。
たとえばこんな場面です。
・ログインしているかどうか
→ isLogin = true / false
・フォームの入力が正しいかどうか
→ isValid = true / false
・ボタンが押されたかどうか
→ isClicked = true / false
フラグがあると、「もし〇〇ならこの処理」「そうでなければ別の処理」といった分岐がとても書きやすくなります。
フラグが複数あるときはどうやって管理する?
実際のプログラムでは、フラグは1つだけでなく複数使うことが多いです。
たとえば、
・isLogin(ログイン中か?)
・isAdmin(管理者か?)
・hasError(エラーがあるか?)
のように、意味が分かりやすい名前を付けるのがポイントです。
flag1 や flag2 のような名前だと、後から見たときに何のフラグか分からなくなってしまいます。
また、フラグが増えてきたら
「このフラグは何を表しているのか?」
をコメントに書いておくと、自分にも他の人にもやさしいコードになります。
まとめ
・フラグは「オン/オフ」「はい/いいえ」を表す変数
・true は「成立している状態」、false は「成立していない状態」
・条件分岐と一緒に使うことで、プログラムの流れをコントロールできる
・フラグ名は意味が分かる名前にすると管理しやすい
最初は少し抽象的に感じますが、
「状態を記録するスイッチ」と思うとイメージしやすいです。
条件分岐(if文など)と一緒にたくさん出てくるので、少しずつ慣れていきたいと思います!
引用文献
超基本を学ぶ JavaScript プログラミングの基本を学びWebサイトを動かす仕組みを理解して表現の幅を広げよう 長江かほり著
