Логический тип данных имеет только два допустимых значения. Эти два значения являются зарезервированными словами true (истина) и false (ложь). Булевы значения обычно представляют собой результат операций сравнения, выполняемых в сценарии.
x == 7
Данное выражение проверяет, равно ли значение переменной x числу 7. Если да, результатом этого сравнения будет булево значение true. Если значение переменной x не равно 7, результатом сравнения будет - false.
Булевы значения обычно используются в управляющих конструкциях. Например, инструкция if/else выполняет одно действие, если булево значение равно true, и другое действие, если false.
var x = 7;
if(x == 7)
alert("Значение переменной x равно 7");
else
alert("Значение переменной x не равно 7");
Следующие значения в результате преобразования дают значение false:
undefined
null
-0
NaN
"" - пустая строка
Значение false и шесть значений, которые при преобразовании приводятся к этому значению, обычно называют ложными значениями, а все остальные - истинными.
var x = 7;
if(x)
alert("Значение переменной x преобразовано в true");
else
alert("Hello!");
var y = 0;
if(y)
alert("Hello!");
else
alert("Значение переменной y преобразовано в false");
Когда булево значение используется в числовом контексте, значение true преобразуется в число 1, а false – в 0, в строковом контексте, значение true преобразуется в строку "true", а false – в строку "false".
alert(2 - true);
alert(false + "ложь");