フラグ変数とは、ONとOFFのどちらかを表す目的で使われる変数。フラグ変数の値を変更する最も思いつき易い書き方は以下だろう(JavaScript)。
let isHoge = false;
if (isHoge === true) {
isHoge = false;
} else {
isHoge = true;
}
三項演算子を使用した例が以下。
let isHoge = false;
isHoge = (isHoge) ? false : true;
これよりシンプルで変わった書き方がある。JavaScriptでは0はfalse、1はtrueと解釈される。これを利用した書き方が以下。
let isHoge = 0;
isHoge = 1 - isHoge;
これにより変数isHogeの値は0から1へ、1から0へ反転する。但し、isHoge === trueと厳密等価演算子を使うと、数値型と論理型であるため0でも1でもfalseとなる。
さらにシンプルな例が以下。
let isHoge = true;
isHoge = !isHoge;
この書き方だとBooleanのままtrueとfalseが反転する。これはC++、C#、Python(!ではなくnotを使う)などでも利用可能。
コメント