Логические значения JavaScript
Логическое значение JavaScript представляет одно из двух значений: true или false .
Логические значения
Очень часто в программировании вам понадобится тип данных, который может иметь только одно из двух значений, например
- ДА НЕТ
- ВКЛ ВЫКЛ
- ИСТИНА / ЛОЖЬ
Для этого в JavaScript есть логический тип данных. Он может принимать только значения true или false .
Булева функция()
Вы можете использовать Boolean()
функцию, чтобы узнать, истинно ли выражение (или переменная):
Пример
Boolean(10 > 9)
Или еще проще:
Пример
(10 > 9)
10 > 9
Сравнения и условия
Глава JS Comparisons дает полный обзор операторов сравнения.
В главе «Условия JS» дается полный обзор условных операторов.
Вот некоторые примеры:
Operator | Description | Example |
---|---|---|
== | equal to | if (day == "Monday") |
> | greater than | if (salary > 9000) |
< | less than | if (age < 18) |
Логическое значение выражения является основой для всех сравнений и условий JavaScript.
Все, что имеет значение, верно
Примеры
100
3.14
-15
"Hello"
"false"
7 + 1 + 3.14
Все без «ценности» ложно
Логическое значение 0 (ноль) является ложным :
let x = 0;
Boolean(x);
Логическое значение -0 (минус ноль) ложно :
let x = -0;
Boolean(x);
Логическое значение "" (пустая строка) равно false :
let x = "";
Boolean(x);
Логическое значение undefined равно false :
let x;
Boolean(x);
Логическое значение null равно false :
let x = null;
Boolean(x);
Логическое значение false равно (как вы уже догадались) false :
let x = false;
Boolean(x);
Логическое значение NaN равно false :
let x = 10 / "Hallo";
Boolean(x);
Логические значения JavaScript как объекты
Обычно логические значения JavaScript представляют собой примитивные значения, созданные из литералов:
let x = false;
Но логические значения также могут быть определены как объекты с помощью ключевого слова new
:
let y = new Boolean(false);
Пример
let x = false;
let y = new Boolean(false);
//
typeof x returns boolean
//
typeof y returns object
Не создавайте логические объекты.
Ключевое new
слово усложняет код и замедляет скорость выполнения.
Логические объекты могут давать неожиданные результаты:
При использовании ==
оператора x и y равны :
let x = false;
let y = new Boolean(false);
При использовании ===
оператора x и y не равны :
let x = false;
let y = new Boolean(false);
Обратите внимание на разницу между (x==y) и (x===y).
(x == y)
истинное из ложного?
let x = new Boolean(false);
let y = new Boolean(false);
(x === y)
истинное из ложного?
let x = new Boolean(false);
let y = new Boolean(false);
Сравнение двух объектов JavaScript всегда возвращает false .
Полная логическая ссылка
Полную справку см. в нашем Полном справочнике по логическим значениям JavaScript .
Справочник содержит описания и примеры всех логических свойств и методов.