Menu
CoddyTech

Логические операторы. Часть 3

Часть раздела Основы путешествия по JavaScript на Coddy. Урок 21 из 77.

При работе с логическими выражениями иногда нужно упростить или переставить их части.

! (не) перед двумя условиями, соединёнными с помощью && (и), можно разделить на две отдельные части. && (и) превращается в || (или), а каждая часть получает собственный ! (не):

!(A && B) — это то же самое, что (!A) || (!B)

Например:

// Проверим, что число НЕ находится в диапазоне от 1 до 10
let number = 15

// Эти два выражения эквивалентны:
let result1 = !(number >= 1 && number <= 10)
let result2 = !(number >= 1) || !(number <= 10)

console.log(result1)  // Истина
console.log(result2)  // Истина

Верно и обратное: !(A || B) — это то же самое, что (!A) && (!B)

Например:

// Проверяем, что человек НЕ является студентом и НЕ работает
let is_student = false
let is_employed = false
// Эти два выражения эквивалентны:
let result1 = !(is_student || is_employed)
let result2 = !is_student && !is_employed

console.log(result1)  // Истина
console.log(result2)  // Истина
challenge icon

Задание

Новичок

Вы помогаете зоомагазину создать систему, которая определяет, можно ли продать питомца покупателю.

Инициализируйте следующие переменные:

  • hasLicense со значением true
  • hasSpace со значением false
  • hasExperience со значением true

Напишите следующие логические выражения, чтобы определить, выполняются ли условия:

  • canSellRegularPet: покупателю нужна ЛИБО лицензия, ЛИБО опыт, И при этом у него должно быть место
  • canSellExoticPet: покупателю нужны И лицензия, И опыт, И при этом у него должно быть место
  • cannotSellAnyPet: у покупателя НЕТ лицензии И НЕТ опыта ИЛИ у него НЕТ места

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

// Инициализируйте переменные
// Объявите здесь три переменные, указанные в задании

// Вычислите условия
// Замените каждый заполнитель ниже логическим выражением, описанным в задании
let canSellRegularPet = false
let canSellExoticPet = false
let cannotSellAnyPet = false

// Не удаляйте строки ниже
console.log("Can sell regular pet:", canSellRegularPet)
console.log("Can sell exotic pet:", canSellExoticPet)
console.log("Cannot sell any pet:", cannotSellAnyPet)
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы

Потренируйтесь самостоятельно: Онлайн-компилятор JavaScript