Условные выражения

Условные выражения

Coursme
12 - 15 мин.
22 дек. 2023
1

Условные выражения в программировании используются для сравнения значений и возвращают булево значение true (истина) или false (ложь).

Существуют два основных типа условных операций: операции сравнения и логические операции.

Операции сравнения:

  • Оператор равенства (==): Сравнивает два значения и возвращает true, если они равны, иначе возвращает false. Пример: x == 5.
  • Оператор тождественности (===): Сравнивает не только значения, но и их типы. Возвращает true, если значения и их типы идентичны, иначе возвращает false. Пример: x === 5.
  • Оператор неравенства (!=): Возвращает true, если два значения не равны, иначе возвращает false. Пример: x != 5.
  • Оператор строгого неравенства (!==): Сравнивает значения и их типы, возвращая true, если они не идентичны, иначе возвращает false. Пример: x !== 5.
  • Оператор больше (>), меньше (<), больше или равно (>=), меньше или равно (<=): Сравнивают числовые значения и возвращают true или false в зависимости от результата сравнения. Примеры: x > 5, x < 5, x >= 5, x <= 5.

Пример с операторами равенства и тождественности:

const income = 100;
const strIncome = "100";
const resultEqual = income == strIncome; // true
const resultStrictEqual = income === strIncome; // false
console.log(resultEqual, resultStrictEqual);

В данном примере resultEqual будет равен true, так как значения income и strIncome равны, но resultStrictEqual будет равен false, поскольку также учитывается тип данных.

Логические операции

Логические операции в программировании обычно применяются к значениям типа Boolean (true или false) и возвращают также булево значение. Они часто используются для проверки условий.

В JavaScript существуют следующие логические операции:

Логическое И (&&)Возвращает true, если оба операнда истинны, иначе возвращает false.

console.log(true && true);  // true
console.log(true && false); // false
console.log(false && false); // false

Пример использования для проверки двух условий:

const money = 1000;
const age = 21;
const access1 = age > 18 && money > 100; // true
const access2 = age > 18 && money > 1000; // false

Логическое ИЛИ (||)Возвращает true, если хотя бы один из операндов истинен, иначе возвращает false.

console.log(true || true);  // true
console.log(true || false); // true
console.log(false || false); // false

Пример использования для проверки условий:

const money = 1000;
const age = 21;
const access1 = age > 18 || money > 1000; // true
const access2 = age > 22 || money > 1000; // true

Логическое отрицание (!)Возвращает true, если операнд ложен, и наоборот.

console.log(!true);  // false
console.log(!false); // true

Пример использования:

const isAlive = true;
const isDead = !isAlive; // false

Логические операции с произвольными значениями

Логические операции могут принимать значения разных типов, не только Boolean. JavaScript автоматически преобразует определенные значения к типу Boolean.

Примеры преобразования:

console.log(false && "Tom");  // false
console.log("Tom" && null);   // null
console.log(true && "Tom");   // Tom
console.log(false || "Tom");  // Tom
console.log("Tom" || null);   // Tom
console.log(true || "Tom");   // true
console.log(!null);     // true
console.log(!0);        // true
console.log(!"");       // true
console.log(!"Tom");    // false

Условные конструкцииЛогические операции могут быть удобными при построении условных конструкций.

Пример:

const age = 22;
age <= 17 && console.log("Вам меньше 18 лет. Доступ запрещен.");
age > 17 && console.log("Вам больше 17 лет. Доступ разрешен.");

Использование || для того же:

const age = 12;
age <= 17 || console.log("Вам больше 17 лет. Доступ разрешен.");
age > 17 || console.log("Вам меньше 18 лет. Доступ запрещен.");

Такие конструкции позволяют выполнять определенные действия в зависимости от условий

Операции присваивания

В JavaScript существуют операции, которые сочетают в себе логические операции и присваивание.

&&= (ИЛИ-И)

Операция a &&= b аналогична выражению a = a && b. Она присваивает переменной a результат логического И между текущим значением a и значением b.

let x = true;
let y = false;
y &&= x;
console.log(y); // false
let c = false;
let d = true;
c &&= d;
console.log(c); // false
let a = true;
let b = true;
a &&= b;
console.log(a); // true
let e = false;
let f = false;
e &&= f;
console.log(e); // false

||= (ИЛИ)

Операция a ||= b аналогична выражению a = a || b. Она присваивает переменной a результат логического ИЛИ между текущим значением a и значением b.

let x = true;
let y = false;
y ||= x;
console.log(y); // true
let a = true;
let b = true;
a ||= b;
console.log(a); // true
let c = false;
let d = true;
c ||= d;
console.log(c); // true
let e = false;
let f = false;
e ||= f;
console.log(e); // false

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

Зкалючение

Операции сравнения играют важную роль в создании условных выражений, которые управляют ходом выполнения программы. Особенно важно быть внимательным к выбору между операторами равенства и тождественности, чтобы избежать неожиданных результатов из-за автоматического приведения типов. Применение этих операторов с умом позволяет создавать эффективные и правильно функционирующие программы.

Назад
Следующий тест
Комментарии
(1)
Чтобы оставлять комментарии — надо авторизоваться
АП
Антон Питишкин
const money = 1000; const age = 21; const access1 = age > 18 || money > 1000; // true const access2 = age > 22 || money > 1000; // true Тут ошибка, access2 false вернет
25 апреля 12:24
Ответить
Главная
Курсы
Блог
Меню