Boolean
Примитивный тип данных. Значение может быть равно либо истине (константа true
), либо лжи (константа false
).
var myBool1 = true; var myBool2 = false; print(typeof myBool1); // печатает "boolean"
Неявное преобразование типов
В выражениях, где ожидается булево значение, к false
неявно приводятся следующие значения:
""
(пустая строка);0
(ноль);-0
(вещественный минус ноль);null
;undefined
;NaN
(вещественное Not A Number).
Любые другие значения приводятся к true
. В том числе "0"
(строковый ноль), []
(пустой массив), "false"
(строка «false»).
Явное преобразование типов
Произвести явное преобразование в булево значение можно с помощью конструктора Boolean
:
var x = 42; var falsy1 = new Boolean(); var falsy2 = new Boolean(0); var truthy1 = new Boolean('hello'); var truthy2 = new Boolean(x);
Альтернативно для преобразования в Boolean
можно использовать двойной оператор отрицания:
var x = 42; var falsy1 = !!null; var falsy2 = !!0; var truthy1 = !!'hello'; var truthy2 = !!x;