JavaScript ブール値

❮ 前章へ 次章へ ❯

JavaScript のブール値は、true または false の2つの値のいずれかを表します。


ブール値

プログラミングでは、次のような、2つの値のうちの1つしか持つことのできないデータ型が必要になる場合が多々あります

このため、JavaScript にはBoolean データ型があります。 その値は、true または false の何れかです。


Boolean() 関数

式(または変数)が真であるかどうかを調べるには、Boolean() 関数を使用することができます:

Boolean(10 > 9)        // returns true
Try it Yourself »

または、もっと簡単に:

(10 > 9)              // also returns true
10 > 9                // also returns true
Try it Yourself »

比較と条件

JS 比較の章では、比較演算子の全体概要を示しています。

JS 条件の章では、条件文の全体概要を示しています。

ここではいくつかの例を示します:

演算子 説明
== 等しい if (day == "Monday")
> より大きい if (salary > 9000)
< より小さい if (age < 18)

式のブール値は、JavaScript の比較と条件の基本です。


「実数」値を持つものはすべて真です

100

3.14

-15

"Hello"

"false"

7 + 1 + 3.14

5 < 6
Try it Yourself »

「実数」以外のすべてが偽です

0(ゼロ)のブール値は falseです:

var x = 0;
Boolean(x);       // returns false
Try it Yourself »

-0 マイナスゼロ)のブール値は falseです:

var x = -0;
Boolean(x);       // returns false
Try it Yourself »

"" (空文字列)のブール値は falseです:

var x = "";
Boolean(x);       // returns false
Try it Yourself »

undefined のブール値は falseです:

var x;
Boolean(x);       // returns false
Try it Yourself »

null のブール値は falseです:

var x = null;
Boolean(x);       // returns false
Try it Yourself »

false のブール値は (推測の通り)falseです:is (you guessed it) false:

var x = false;
Boolean(x);       // returns false
Try it Yourself »

NaN のブール値は falseです:

var x = 10 / "H";
Boolean(x);       // returns false
Try it Yourself »

ブール値はオブジェクトにできます

通常、JavaScript ブール値は、リテラルから作成されるプリミティブな値です:var x = false

しかし、ブール値はキーワード new でオブジェクトとして定義することもできます:var y = new Boolean(false)

var x = false;
var y = new Boolean(false);

// typeof x returns boolean
// typeof y returns object
Try it yourself »

Boolean オブジェクトを作成しないでください。 実行速度が遅くなります。
newキーワードはコードを複雑にします。 これにより予期しない結果が生じる可能性があります:

== 演算子を使用する場合、同じブール値は等しくなります:

var x = false;             
var y = new Boolean(false);

// (x == y) is true because x and y have equal values
Try it Yourself »

=== 演算子を使用する場合、型と値の両方が等しくなければ、ブール値が同じでも等しくはなりません。

var x = false;             
var y = new Boolean(false);

// (x === y) is false because x and y have different types
Try it Yourself »

更に悪いことに、オブジェクトは比較できません:

var x = new Boolean(false);             
var y = new Boolean(false);

// (x == y) is false because objects cannot be compared
Try it Yourself »

2つの JavaScript オブジェクトを比較すると常に false が返されます。


このリファレンスには、ブールのすべてのプロパティとメソッドの説明と例が含まれています。

完全な Boolean リファレンス

完全なリファレンスは、完全な JavaScript Boolean リファレンスをご覧下さい。

このリファレンスには、すべての Boolean プロパティとメソッドの説明と例が含まれています。


❮ 前章へ 次章へ ❯