JavaScriptのboolean(真偽値)について総まとめ

JavaScript

JavaScriptのBooleanとは

booleanは、JavaScriptのプリミティブなデータ型であり、真(true)か偽(false)の2つの値のみを持つことができます。

こららの値はif else, switch, while loop などの条件文を使ってプログラムの流れを制御するのに便利です。

let YES = true;
let NO = false;

以下のコード例は、boolean値でプログラムの流れを制御する方法を、if条件を使って示しています。

var YES = true;
var NO = false;

if(YES) {
    alert("trueです");
}

if(NO) {
    alert("falseです");
}

比較式は、比較が真か偽かを示すboolean値を返します。

let a = 10, b = 20;
let result = 1 > 2;      // false

result = a < b;          // true
result = a > b;          // false
result = a + 20 > b + 5; // true

Boolean関数

JavaScriptには、他の型をboolean型に変換するBoolean()関数が用意されています。

第1パラメータとして指定された値は、bool値に変換されます。Boolean()は、空でないもの、ゼロでないもの、オブジェクト、配列のいずれに対してもtrueを返します。

let a = 10, b = 20;
let b1 = Boolean('Hello'); // true
let b2 = Boolean('h');     // true
let b3 = Boolean(10);      // true
let b4 = Boolean([]);      // true
let b5 = Boolean(a + b);   // true

第一引数に 0、-0、null、false、NaN、undefined、”(空文字列)、または引数が渡されない場合、Boolean()関数はfalseを返す。

Boolean()関数のnewオペレータは、Booleanオブジェクトを返します。

let bool = new Boolean(true);
alert(bool);  // true

どんなbooleanオブジェクトでも、条件文の中で渡されるとtrueと評価されます。

var bool = new Boolean(false);

if(bool){
    alert('trueです');
}

Boolean vs boolean

new Boolean()はブーリアンオブジェクトを返しますが、newキーワードがない場合はbooleanを返します。

boolean(小文字)はプリミティブ型であるのに対し、Boolean(大文字)はJavaScriptではオブジェクトである。型を確認するにはtypeof演算子を使用します。

ここらへん少しややこしいですよね。

let b1 = new Boolean(true);
let b2 = true;

typeof b1; // object
typeof b2; // boolean

Booleanメソッド

プリミティブオブジェクト、Booleanオブジェクトには、以下のメソッドがあります。

メソッド説明
toLocaleString()ローカルブラウザ環境におけるboolean値の文字列を返す。
toString()Boolean の文字列を返す。
valueOf()Boolean オブジェクトの値を返します。

toLocaleString()

let result = (1 > 2); result.toLocaleString(); // "false"

toString()

let result = (1 > 2); result.toString(); // "false"

valueOf()

let result = (1 > 2); result.valueOf(); // false
タイトルとURLをコピーしました