This page was translated from English by the community. Learn more and join the MDN Web Docs community.

View in English Always switch to English

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 г.⁩.

Объект Boolean представляет значения истинности: true или false.

Описание

Значение, переданное первым параметром, при необходимости преобразуется в логическое значение. Если значение опущено или равно 0, -0, null, false, NaN, undefined или пустой строке (""), объект имеет начальное значение, равное false. Все остальные значения, включая любые объекты или строку "false", создают объект с начальным значением, равным true.

Не путайте примитивные значения true и false логического типа со значениями true и false объекта Boolean.

Любой объект, чьё значение не является равным undefined или null, включая сам объект Boolean со значением, равным false, вычисляется в true при передаче его в условное выражение. Например, условие в следующей инструкции if вычисляется в true:

js
var x = new Boolean(false);
if (x) {
  // этот код будет выполнен
}

Это поведение не применяется к примитивам логического типа. Например, условие в следующей инструкции if вычисляется в false:

js
var x = false;
if (x) {
  // этот код не будет выполнен
}

Не используйте объект Boolean для преобразования нелогического значения в логическое значение. Вместо этого используйте Boolean в качестве функции:

js
var x = Boolean(expression); // предпочтительно
var x = new Boolean(expression); // не используйте

Если вы определите любой объект, включая объект Boolean со значением false, в качестве начального значения объекта Boolean, новый объект Boolean будет иметь значение true.

js
var myFalse = new Boolean(false); // начальное значение равно false
var g = new Boolean(myFalse); // начальное значение равно true
var myString = new String("Привет"); // строковый объект
var s = new Boolean(myString); // начальное значение равно true

Не используйте объект Boolean вместо примитива логического типа.

Конструктор

Boolean()

Создаёт новый объект Boolean.

Свойства экземпляра

Эти свойства определены в Boolean.prototype и есть у всех экземпляров Boolean.

Boolean.prototype.constructor

Функция-конструктор, создающая экземпляр объекта. Для экземпляров Boolean начальным значением является конструктор Boolean.

Методы экземпляра

Boolean.prototype.toString()

Возвращает строку true или false в зависимости от значения объекта. Переопределяет метод Object.prototype.toString().

Boolean.prototype.valueOf()

Возвращает примитивное значение объекта Boolean. Переопределяет метод Object.prototype.valueOf().

Примеры

Создание объектов Boolean с начальным значением равным false

js
const bNoParam = new Boolean();
const bZero = new Boolean(0);
const bNull = new Boolean(null);
const bEmptyString = new Boolean("");
const bfalse = new Boolean(false);

Создание объектов Boolean с начальным значением равным true

js
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-objects

Совместимость с браузерами

Смотрите также