Boolean は真偽値のラッパオブジェクトです。
構文
new Boolean([value])
引数
value- 省略可能。
Booleanオブジェクトの初期値。
説明
一番目の引数に渡された値は、必要に応じ真偽値に変換されます。値が省略された場合や、値が 0, -0, null, false, NaN, undefined あるいは空文字列 ("") であった場合、オブジェクトは false の初期値を持ちます。それ以外のあらゆる値は、オブジェクトや "false" という文字列も含めて、true の初期値を持つオブジェクトを生成します。
プリミティブな真偽値の true や false を Boolean オブジェクトの true や false という値と混同しないでください。
その値が undefined や null でないオブジェクトは、値が false の Boolean オブジェクトも含めて、条件文に通されると全て true に評価されます。例えば、以下の if 文の条件は true に評価されます。:
var x = new Boolean(false);
if (x) {
// . . . このコードは実行されます。
}
この振る舞いはプリミティブな真偽値には適用されません。例えば、以下の if 文の条件は false に評価されます。:
var x = false;
if (x) {
// . . . このコードは実行されません
}
Boolean オブジェクトを真偽値でない値から真偽値への変換に使わないでください。代わりに、Boolean を関数として使うことで同じことが行えます。:
var x = Boolean(expression); // 推奨 x = new Boolean(expression); // 使わないでください
Boolean オブジェクトの初期値としてオブジェクトを指定した場合、それが値が false の Boolean オブジェクトであっても、新しい Boolean オブジェクトは true の値を持ちます。
var myFalse = new Boolean(false); // 初期値は false
var g = Boolean(myFalse); // 初期値は true
var myString = new String("Hello"); // String オブジェクト
var s = Boolean(myString); // 初期値は true
プリミティブな真偽値の代わりに Boolean オブジェクトを使わないでください。
プロパティ
Boolean.length- 常に 1 です。
Boolean.prototypeBooleanコンストラクタのprototypeです。
メソッド
グローバル な Boolean オブジェクトは自分自身のメソッドを持っていませんが、プロトタイプチェーンを通していくつかのメソッドを継承しています。
Boolean インスタンス
Boolean インスタンスは、Boolean.prototype を継承します。コンストラクタのプロトタイプオブジェクトを用いて、Boolean インスタンスの全てにプロパティ、もしくは、メソッドを加えることができます。
プロパティ
メソッド
例
false の初期値を持つ Boolean オブジェクトを生成する
var bNoParam = new Boolean();
var bZero = new Boolean(0);
var bNull = new Boolean(null);
var bEmptyString = new Boolean("");
var bfalse = new Boolean(false);
true の初期値を持つ Boolean オブジェクトを生成する
var btrue = new Boolean(true);
var btrueString = new Boolean('true');
var bfalseString = new Boolean('false');
var bSuLin = new Boolean('Su Lin');
var bArrayProto = new Boolean([]);
var bObjProto = new Boolean({});
仕様
| Specification | Status | Comment |
|---|---|---|
| ECMAScript 1st Edition (ECMA-262) | 標準 | Initial definition. Implemented in JavaScript 1.0. |
| ECMAScript 5.1 (ECMA-262) Boolean の定義 |
標準 | |
| ECMAScript 2015 (6th Edition, ECMA-262) Boolean の定義 |
標準 | |
| ECMAScript (ECMA-262) Boolean の定義 |
現行の標準 |
ブラウザ実装状況
| デスクトップ | モバイル | サーバー | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Boolean | Chrome 完全対応 1 | Edge 完全対応 12 | Firefox 完全対応 1 | IE 完全対応 3 | Opera 完全対応 3 | Safari 完全対応 1 | WebView Android 完全対応 1 | Chrome Android 完全対応 18 | Firefox Android 完全対応 4 | Opera Android 完全対応 10.1 | Safari iOS 完全対応 1 | Samsung Internet Android 完全対応 1.0 | nodejs 完全対応 あり |
Boolean() constructor | Chrome 完全対応 1 | Edge 完全対応 12 | Firefox 完全対応 1 | IE 完全対応 3 | Opera 完全対応 4 | Safari 完全対応 1 | WebView Android 完全対応 1 | Chrome Android 完全対応 18 | Firefox Android 完全対応 4 | Opera Android 完全対応 10.1 | Safari iOS 完全対応 1 | Samsung Internet Android 完全対応 1.0 | nodejs 完全対応 あり |
toSource | Chrome 未対応 なし | Edge 未対応 なし | Firefox
未対応
1 — 74
| IE 未対応 なし | Opera 未対応 なし | Safari 未対応 なし | WebView Android 未対応 なし | Chrome Android 未対応 なし | Firefox Android 完全対応 4 | Opera Android 未対応 なし | Safari iOS 未対応 なし | Samsung Internet Android 未対応 なし | nodejs 未対応 なし |
toString | Chrome 完全対応 1 | Edge 完全対応 12 | Firefox 完全対応 1 | IE 完全対応 3 | Opera 完全対応 4 | Safari 完全対応 1 | WebView Android 完全対応 1 | Chrome Android 完全対応 18 | Firefox Android 完全対応 4 | Opera Android 完全対応 10.1 | Safari iOS 完全対応 1 | Samsung Internet Android 完全対応 1.0 | nodejs 完全対応 あり |
valueOf | Chrome 完全対応 1 | Edge 完全対応 12 | Firefox 完全対応 1 | IE 完全対応 4 | Opera 完全対応 4 | Safari 完全対応 1 | WebView Android 完全対応 1 | Chrome Android 完全対応 18 | Firefox Android 完全対応 4 | Opera Android 完全対応 10.1 | Safari iOS 完全対応 1 | Samsung Internet Android 完全対応 1.0 | nodejs 完全対応 あり |
凡例
- 完全対応
- 完全対応
- 未対応
- 未対応
- 非標準。ブラウザー間の互換性が低い可能性があります。
- 非標準。ブラウザー間の互換性が低い可能性があります。
- 実装ノートを参照してください。
- 実装ノートを参照してください。