Булевы значения true и false
- Что такое boolean
- true и false
- Булевы значения в переменных
- Булевы значения из сравнений
- Boolean и условия
- Не путаем boolean со строками
- Ложные и истинные значения
- Частые ошибки
Булевы значения в JavaScript - это значения true и false. Они нужны для ответов в формате “да” или “нет”, “истина” или “ложь”.
let isStudent = true;
let isAdmin = false;
Переменная isStudent хранит значение true, то есть “да, студент”. Переменная isAdmin хранит false, то есть “нет, не администратор”.
Такие значения часто используются в условиях, проверках, настройках и результатах сравнений.
Что такое boolean
boolean - это логический тип данных. У него всего два возможных значения:
true- истина;false- ложь.
Проверим тип через typeof:
console.log(typeof true);
console.log(typeof false);
В консоли будет:
boolean
boolean
То есть true и false - это не строки и не числа, а отдельный тип данных.
true и false
true означает, что утверждение верно.
let isOnline = true;
Такую переменную можно прочитать как: пользователь онлайн.
false означает, что утверждение неверно.
let isBlocked = false;
Такую переменную можно прочитать как: пользователь не заблокирован.
Для булевых переменных часто используют имена, которые начинаются с is, has или can. Это не обязательное правило языка, но так код проще читать.
let isReady = true;
let hasAccess = false;
let canEdit = true;
По таким именам сразу видно, что в переменной ожидается логическое значение.
Булевы значения в переменных
Булевы значения можно записывать в переменные так же, как строки и числа.
let isDarkTheme = false;
console.log(isDarkTheme);
Результат:
false
Значение можно изменить, если переменная создана через let:
let isDarkTheme = false;
isDarkTheme = true;
console.log(isDarkTheme);
В консоли будет:
true
Если значение не должно меняться, можно использовать const:
const isMobile = false;
console.log(isMobile);
Булевы значения из сравнений
Чаще всего true и false появляются как результат сравнения.
console.log(10 > 5);
console.log(10 < 5);
Результат:
true
false
Первое сравнение верное: 10 больше 5, поэтому результат true. Второе неверное: 10 не меньше 5, поэтому результат false.
Результат сравнения можно сохранить в переменную:
let age = 18;
let isAdult = age >= 18;
console.log(isAdult);
В консоли будет:
true
Такой код читается почти как обычная фраза: isAdult хранит ответ на вопрос, является ли возраст взрослым.
Boolean и условия
Булевы значения удобно использовать в условиях. Условие решает, выполнять код или нет.
let isAuth = true;
if (isAuth) {
console.log('Показываем личный кабинет');
}
Если isAuth равно true, код внутри if выполнится.
Если значение false, код внутри условия пропускается:
let isAuth = false;
if (isAuth) {
console.log('Показываем личный кабинет');
}
В этом примере сообщение не появится, потому что условие ложное.
Подробно if, else и сравнения мы разберем в отдельных уроках. Сейчас важно увидеть, что true и false часто управляют выполнением кода.
Не путаем boolean со строками
true и ‘true’ - разные значения.
let first = true;
let second = 'true';
console.log(typeof first);
console.log(typeof second);
Результат:
boolean
string
То же самое с false:
let first = false;
let second = 'false';
console.log(typeof first);
console.log(typeof second);
Результат:
boolean
string
Строка ‘false’ - это обычный текст. Она не равна булевому значению false.
Ложные и истинные значения
В JavaScript есть значения, которые в условиях ведут себя как false. Их часто называют ложными.
К таким значениям относятся:
false;0;- пустая строка
”; null;undefined;NaN.
Остальные значения чаще всего ведут себя как true.
if ('JavaScript') {
console.log('Строка не пустая');
}
Сообщение появится, потому что непустая строка в условии считается истинным значением.
Но не нужно сразу пытаться все это выучить наизусть. Мы еще вернемся к этой теме в уроках про условия, логические операторы и функцию Boolean().
Частые ошибки
Первая ошибка - писать true и false в кавычках, когда нужно именно логическое значение.
let isAdmin = 'false';
Здесь в переменной лежит строка, а не boolean. Если нужен логический тип, пишем без кавычек:
let isAdmin = false;
Вторая ошибка - писать True или False с большой буквы.
let isReady = True;
В JavaScript правильно писать только так:
let isReady = true;
JavaScript чувствителен к регистру, поэтому true и True - разные вещи.
Третья ошибка - путать результат сравнения и само значение.
let age = 20;
console.log(age >= 18);
В консоли появится true, потому что сравнение верное. Это не строка и не число, а результат проверки.
Четвертая ошибка - думать, что строка ‘false’ ведет себя как false. На самом деле это непустая строка, и в условиях она считается истинным значением.
Что дальше
Мы разобрали булевы значения true и false, посмотрели, как они записываются, где используются и почему их нельзя путать со строками.
Дальше разберем null и undefined. Эти значения часто встречаются, когда данных пока нет, значение не задано или результат поиска ничего не нашел.