====== Boolean ====== Примитивный тип данных. Значение может быть равно либо истине (константа ''true''), либо лжи (константа ''false''). var myBool1 = true; var myBool2 = false; print(typeof myBool1); // печатает "boolean" ===== Неявное преобразование типов ===== В выражениях, где ожидается булево значение, к ''false'' неявно приводятся следующие значения: * ''""'' (пустая строка); * ''0'' (ноль); * ''-0'' (вещественный минус ноль); * ''null''; * ''undefined''; * ''[[builtins#NaN|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;