フラグ変数のONとOFFの処理をシンプルに記述する方法

値の0と1を反転させる

フラグ変数とは、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;

これにより変数hogeの値は0から1へ、1から0へ反転する。

if (isHoge) {
	// true時の処理を記述
} else {
	// false時の処理を記述
}

但し、isHoge === trueと厳密等価演算子を使うと、数値型と論理型であるため0でも1でもfalseとなる。

コメント

タイトルとURLをコピーしました