Загрузка...

Логические значения

Вы уже умеете резать и искать в строках. Программе ещё нужен ясный ответ да или нет — форма готова? нашлось совпадение? Этот тип — логическое значение: только true или false. Здесь изучаем само значение; полный if будет позже.

Что такое логическое значение в JavaScript?

Логическое значение — это да/нет. Два ключевых слова: true и false — без кавычек. typeof true даёт "boolean". Можно хранить флаг (let ready = true), получить логическое из сравнения (age >= 18) или преобразовать через Boolean(value). Строки вроде "true" остаются текстом, не логическими. Короткий список falsy (значения, которые при преобразовании дают false) спасает от сюрпризов с 0, "", null и undefined.

Набор логических идей

📊 Повседневные логические идеи для старта

Идея Пример Результат / заметка
Буквальное да true ключевое слово, не строка
Буквальное нет false ключевое слово, не строка
typeof typeof false "boolean"
Сравнение 5 > 3 true
Преобразование Boolean(0) false (ноль часто falsy)
Текст → логическое Boolean("hi") true (непустая строка)

Пишите true и false

Используйте ключевые слова true и false. Выведите значение и typeof, чтобы увидеть метку "boolean".

Литералы true и false

javascript
let ready = true;
let done = false;
console.log(ready);
console.log(done);
console.log(typeof ready);
console.log(typeof done);

Сравнения возвращают логическое значение

Операторы вроде >, <, >=, <=, === и !== отвечают true или false. Не нужно каждый раз вручную придумывать логическое — сравнение его создаёт.

Сравнения дают true или false

javascript
console.log(10 > 5);
console.log(2 === 2);
console.log(2 === "2");
console.log(7 < 3);

Преобразование через Boolean()

Boolean(value) превращает другое значение в true или false. «Пустые» значения обычно дают false; многие обычные — true.

Преобразование Boolean

javascript
console.log(Boolean(1));
console.log(Boolean(0));
console.log(Boolean("hello"));
console.log(Boolean(""));

Короткая карта falsy

Эти значения становятся false при Boolean() (или позже в условии): false, 0, "", null, undefined и NaN. Почти всё остальное, что новичок пробует первым, — truthy, включая "0" и "false" как непустые строки.

Falsy-значения на память

javascript
console.log(Boolean(false));
console.log(Boolean(0));
console.log(Boolean(""));
console.log(Boolean(null));
console.log(Boolean(undefined));

Truthy-значения, которые удивляют новичков

Непустые строки truthy — даже "0" и "false". Число 1 тоже truthy. Выведите их, чтобы закрепить контраст с falsy.

Сюрпризы truthy

javascript
console.log(Boolean("0"));
console.log(Boolean("false"));
console.log(Boolean(1));
console.log(Boolean(" "));

Покажите флаг да/нет на странице

Сохраните логическое и выведите его на страницу через textContent.

Страница показывает флаг ready

html
<!DOCTYPE html>
<html>
<head>
<title>Booleans — ready flag</title>
</head>
<body>
<p id="out">…</p>
<script>
let ready = true;
document.getElementById("out").textContent = "ready = " + ready;
</script>
</body>
</html>

Абзац показывает логическое на странице (ready = true или ready = false). Поменяйте только ready, обновите страницу и проверьте текст. Позже этот флаг попадёт в полный if.

Попробуйте сами

  1. Создайте let on = true и let off = false; выведите оба значения и оба typeof.
  2. Выведите 8 >= 8, 3 !== 4 и 1 === "1"; угадайте до запуска.
  3. Вызовите Boolean для 1, 0, "ok" и ""; запишите, что даёт true.
  4. Выведите Boolean("0") и Boolean(0) — строка truthy, числовой ноль falsy.
  5. В HTML-демо поставьте ready в false, обновите и прочитайте строку.
  6. Смените подпись перед + ready; логика остаётся той же.

Частые ошибки

  • Писать "true" или "false" в кавычках — это строки, не логические
  • Использовать True / False с заглавной — в JavaScript строчные true / false
  • Считать, что 1 и 0 и есть логический тип — это числа; преобразование может сопоставить, но typeof 1 — "number"
  • Забывать, что сравнение уже возвращает логическое — часто сохраняют: let ok = score >= 10
  • Считать непустую строку "false" falsy — Boolean("false") равно true

Кратко

  • Логическое значение — только true или false (ключевые слова, без кавычек)
  • typeof сообщает "boolean"; сравнения вроде === и > возвращают логическое
  • Boolean(value) преобразует; помните частые falsy: 0, "", null, undefined, false, NaN
  • Строки "true" / "false" — текст, не логический тип
  • Дальше: null и undefined — две идеи «пустоты», не логические значения

🧠 Проверьте Свои Знания

Готов к Началу

Проверьте Свои Знания

Бросьте себе вызов с помощью этой интерактивной викторины и узнайте, насколько хорошо вы понимаете тему

❓
8
Вопросы
🎯
70%
Для Прохождения
♾️
∞
Время
🔄
∞
Попытки

📝 Инструкции

  • Внимательно прочитайте каждый вопрос
  • Выберите лучший ответ на каждый вопрос
  • Вы можете пересдавать тест столько раз, сколько захотите
  • Ваш прогресс будет показан вверху