Разберем примеры значений которые являются ложными и истинными в JavaScript.
Например когда в JS мы делаем проверку if (0) { ... }
, 0
преобразуется к ложному значению и равносилен false. А когда проверка идет на пустой массив if ([]) { ... }
, то пустой массив будет приведен к значение true и это будет считаться истинным значением.
Далее приведены таблицы истинных и ложных значений в JavaScript.
Ложные значение в JavaScript
Значение | Описание |
false | Ключевое слово false |
0 | Ноль типа Number . К нему также относятся 0.0 , 0x0 и т.д. |
-0 | Отрицательный ноль типа Number . К нему также относятся -0.0 , -0x0 и т.д. |
0n | Ноль типа BigInt (также 0x0n ). Обратите внимание, что не может быть негативного нуля типа BigInt — отрицательный 0n равняется 0n . |
"" , '' , ``` | Значение, содержащее пустую строку . |
null | null — отсутствие какого-либо значения. |
undefined | undefined — примитивное значение. |
NaN | NaN — значение, не являющиеся числом. |
document.all | Объекты считаются ложноподобными тогда и только тогда, когда у них есть внутренний слот [[IsHTMLDDA]] . Этот слот есть только в объекте document.all , и его нельзя задать через JavaScript. |
Примеры ложных значений в JavaScript
if (false) // false if (null) // false if (undefined) // false if (0) // false if (-0) // false if (0n) // false if (NaN) // false if ("") // false
Истинные значения в JavaScript
Любое значение которое не является ложным false
, будет приведено к истинному true
.
Значение | Описание |
"abc" , 'abc' , `abc` | Любая не пустая строка, тип String . |
"0" | Строка с символом "0" . Любая не пустая строка, тип String . |
"false" | Строка с текстом "false" . Любая не пустая строка, тип String . |
100 , -100 ,3.14 , -3.14 | Любое положительное или отрицательное число, не являющееся нулем. Тип Number . |
12n | Число типа BigInt , не являющееся нулем. |
Infinity , -Infinity | Бесконечность и минус бесконечность является истинным значением. |
[] | Пустой массив является истинным true |
{} | Пустой объект является истинным true |
Примеры истинных значений в JavaScript
if (true) // true if ({}) // true if ([]) // true if (42) // true if ("0") // true if ("false") // true if (new Date()) // true if (-42) // true if (12n) // true if (3.14) // true if (-3.14) // true if (Infinity) // true if (-Infinity) // true