Об'єкт Boolean - це об'єкт-обгортка для значень булевого типу.

Синтаксис

new Boolean([value])

Параметри

value
Необов'язковий. Початкове значення об'єкту Boolean.

Опис

Значення, передане як перший параметр, перетворюється в логічне значення, якщо це необхідно. Якщо значення опущено або являється 0, -0, null, false, NaN, undefined, або порожнім рядком (""), об'єкт міститиме значення false. Всі інші значення, включаючи будь-який об'єкт або рядок "false", створюють об'єкт із  значенням​​​​​​​ true.

Не плутайте примітивні Boolean значення true та false з true та false значеннями об'єкту Boolean.

Будь-який об'єкт, значення якого не undefined чи null, в тому числі об'єкт Boolean із значенням  false, прирівнюється до true при передачі до умовного виразу. Для прикладу, умова в наступному if виразі прирівнюється до true:

var x = new Boolean(false);
if (x) {
  // цей код виконуватиметься
}

Ця поведінка не властива примітивам Boolean. Для прикладу, умова в наступному if виразі прирівнюється до false:

var x = false;
if (x) {
  // цей код не виконуватиметься
}

Не використовуйте об'єкт Boolean для перетворення не булевого значення в булеве. Замість цього використайте Boolean як функцію, щоб досягнути цього:

var x = Boolean(expression);     // рекомендовано
var x = new Boolean(expression); // не варто використовувати

Якщо ви вказали будь-який об'єкт, включаючи об'єкт Boolean із значенням false в якості значення нового Boolean об'єкту, цей об'єкт матиме значення true.

var myFalse = new Boolean(false);   // значення false
var g = Boolean(myFalse);       // значення true
var myString = new String('Hello'); // строковий об'єкт
var s = Boolean(myString);      // значення true

Не використовуйте об'єкт Boolean замість примітиву Boolean.

Властивості

Boolean.length

Поле довжини із значенням 1.

Boolean.prototype
Представляє прототип конструктора Boolean.

Методи

Хоча глобальний Boolean об'єкт не містить жодних власних методів, він успадковує деякі методи через ланцюжок прототипів.

Екземпляри Boolean

Всі екземпляриBoolean успадковуються від Boolean.prototype. Як і у всіх конструкторів, об'єкт прототипу визначає успадковані властивості та методи екземплярів.

Властивості

Boolean.prototype.constructor
Returns the function that created an instance's prototype. This is the Boolean function by default.

Методи

Boolean.prototype.toSource()
Returns a string containing the source of the Boolean object; you can use this string to create an equivalent object. Overrides the Object.prototype.toSource() method.
Boolean.prototype.toString()
Returns a string of either "true" or "false" depending upon the value of the object. Overrides the Object.prototype.toString() method.
Boolean.prototype.valueOf()
Returns the primitive value of the Boolean object. Overrides the Object.prototype.valueOf() method.

Приклади

Створення об'єктів Boolean з початковим значенням false

var bNoParam = Boolean();
var bZero = Boolean(0);
var bNull = Boolean(null);
var bEmptyString = Boolean('');
var bfalse = Boolean(false);

Створення об'єктів Boolean з початковим значенням true

var btrue = Boolean(true);
var btrueString = Boolean('true');
var bfalseString = Boolean('false');
var bSuLin = Boolean('Su Lin');
var bArrayProto = Boolean([]);
var bObjProto = Boolean({});

Специфікації

Специфікація Статус Коментар
ECMAScript 1st Edition (ECMA-262) Standard Початкове визначення. Впроваджено в JavaScript 1.0.
ECMAScript 5.1 (ECMA-262)
The definition of 'Boolean' in that specification.
Standard  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Boolean' in that specification.
Standard  
ECMAScript Latest Draft (ECMA-262)
The definition of 'Boolean' in that specification.
Draft  

Сумісність з веб переглядачами

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidSafari on iOSSamsung InternetNode.js
Basic supportChrome Full support YesEdge Full support YesFirefox Full support 1IE Full support YesOpera Full support YesSafari Full support YesWebView Android Full support YesChrome Android Full support YesEdge Mobile Full support YesFirefox Android Full support 4Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support Yesnodejs Full support Yes
prototypeChrome Full support YesEdge Full support YesFirefox Full support 1IE Full support YesOpera Full support YesSafari Full support YesWebView Android Full support YesChrome Android Full support YesEdge Mobile Full support YesFirefox Android Full support 4Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support Yesnodejs Full support Yes
toSource
Non-standard
Chrome No support NoEdge No support NoFirefox Full support 1IE No support NoOpera No support NoSafari No support NoWebView Android No support NoChrome Android No support NoEdge Mobile No support NoFirefox Android Full support 4Opera Android No support NoSafari iOS No support NoSamsung Internet Android No support Nonodejs No support No
toStringChrome Full support YesEdge Full support YesFirefox Full support 1IE Full support YesOpera Full support YesSafari Full support YesWebView Android Full support YesChrome Android Full support YesEdge Mobile Full support YesFirefox Android Full support 4Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support Yesnodejs Full support Yes
valueOfChrome Full support YesEdge Full support YesFirefox Full support 1IE Full support YesOpera Full support YesSafari Full support YesWebView Android Full support YesChrome Android Full support YesEdge Mobile Full support YesFirefox Android Full support 4Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support Yesnodejs Full support Yes

Legend

Full support  
Full support
No support  
No support
Non-standard. Expect poor cross-browser support.
Non-standard. Expect poor cross-browser support.

Дивіться також

Мітки документа й учасники

Зробили внесок у цю сторінку: AdriandeCita, voleger
Востаннє оновлена: AdriandeCita,