このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。
Boolean() コンストラクター
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
Boolean() コンストラクターはBoolean オブジェクトを生成します。関数として呼び出された場合、論理型のプリミティブ値を返します。
In this article
試してみましょう
const flag = new Boolean();console.log(typeof flag);// 予想される結果: objectconsole.log(flag === false);// 予想される結果: falseconst flag2 = Boolean();console.log(typeof flag2);// 予想される結果: booleanconsole.log(flag2 === false);// 予想される結果: true構文
new Boolean(value)Boolean(value)引数
valueこの
Booleanオブジェクトの初期値です。
返値
Boolean() が関数として(new なしで)呼び出された場合、value を論理型に変換された値として返します。
Boolean() がコンストラクターとして(new をつけて)呼び出された場合、value を論理値型のプリミティブに変換し、それをラップしたBoolean オブジェクトを返します。このオブジェクトはプリミティブ型ではありません。
警告:Boolean をコンストラクターとして使用する例は、ほとんど見つからないはずです。
解説
最初の引数として渡された値は論理値に変換されます。値が省略されるか、0、-0、0n、null、false、NaN、undefined、または空文字列 ("") の場合、オブジェクトの初期値はfalse になります。それ以外にもすべての値(オブジェクト、空の配列 ([])、文字列"false" を含む)は、初期値がtrue のオブジェクトを生成します。
メモ:標準外のプロパティdocument.all がこのコンストラクターの引数として使われた場合、結果はfalse の値を持ったBoolean オブジェクトになります。このプロパティは古く標準外であるため、使用しないでください。
例
>Boolean オブジェクトを生成して初期値を false とする
const bZero = new Boolean(0);const bNull = new Boolean(null);const bEmptyString = new Boolean("");const bfalse = new Boolean(false);typeof bfalse; // "object"Boolean(bfalse); // trueBoolean オブジェクトをBoolean() でプリミティブに変換すると、オブジェクトがfalse の値を保持していても常にtrue を生成することに注意してください。したがって、Boolean ラッパー オブジェクトの構築は常に避けるようにお勧めします。
ラッパーオブジェクトからプリミティブ値を取得する必要がある場合、Boolean() 関数を使用するのではなく、そのオブジェクトのvalueOf() メソッドを使用してください。
const bfalse = new Boolean(false);bfalse.valueOf(); // falseBoolean オブジェクトを生成して初期値を true とする
const btrue = new Boolean(true);const btrueString = new Boolean("true");const bfalseString = new Boolean("false");const bSuLin = new Boolean("Su Lin");const bArrayProto = new Boolean([]);const bObjProto = new Boolean({});仕様書
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-boolean-constructor> |