Операторы сравнения и логические операторы в JS
В этой статье вы познакомитесь с операторами сравнения и логическими операторами, которые можно использовать для условий в циклах.
Операторы сравнения в JavaScript
| Оператор | Описание | Использование |
| == | Равно: возвращает true, если операнды равны. В остальных случаях false. |
|
| != | Не равно: возвращает true, если операнды не равны. В остальных случаях false. | 5 != 5; // false |
| === | Строгое равно: возвращает true, если операнды равны и принадлежат одному типу. В остальных случаях false. | 5 === '5'; // false |
| !== | Строгое не равно: возвращает true, если операнды не равны, или равны, но принадлежат разным типам. В остальных случаях false. | 5 !== '5'; // true |
| > | Больше: возвращает true, если правый операнд больше, чем левый. В остальных случаях false. | 3 > 2; // true |
| >= | Больше или равно: возвращает true, если правый операнд больше левого или равен ему. В остальных случаях false. | 3 >= 2; // true |
| < | Меньше: возвращает true, если правый операнд меньше, чем левый. В остальных случаях false. |
|
| <= | Меньше или равно: возвращает true, если правый операнд меньше левого или равен ему. В остальных случаях false. | 2 <= 2; // true |
Пример 1. Оператор равно
const a = 5, b = 2, c = "привет";
// оператор равно
console.log(a == 5); // true
console.log(b == '2'); // true
console.log(c == "Привет"); // false
Оператор == возвращает true, если операнды равны.
Примечание. Обратите внимание, что
==— это оператор сравнения, а=— оператор присваивания. Не путайте их, иначе возникнет ошибка.
Пример 2. Оператор не равно
const a = 3, b = "привет";
// оператор не равно
console.log(a != 2); // true
console.log(b != "Привет"); // true
Оператор != возвращает true, если операнды не равны.
Пример 3. Оператор строго равно
const a = 2;
// оператор строго равно
console.log(a === 2); // true
console.log(a === '2'); // false
Оператор === возвращает true, если операнды равны и принадлежат одному и тому же типу. Здесь 2 и '2' — одинаковые числа, но тип данных у них разный.
Примечание. Разница между
==и===заключается в том, что:
• оператор==возвращает true, если операнды равны
• оператор===возвращает true, только если операнды равны и имеют одинаковый тип.
Пример 4. Оператор строго не равно
const a = 2, b = "привет";
// оператор строго не равно
console.log(a !== 2); // false
console.log(a !== '2'); // true
console.log(b !== "Привет"); // true
Оператор !== возвращает true, если операнды строго не равны. Это полная противоположность оператору строго равно ===.
В приведенном выше примере 2 !== '2' возвращает true. Так происходит потому, что у них одинаковые значения, но разные типы.
Пример 5. Оператор больше
const a = 3;
// оператора больше
console.log(a > 2); // true
Операто > возвращает true, если левый операнд больше правого операнда.
Пример 6. Оператор больше или равно
const a = 3;
// оператор больше или равно
console.log(a >= 3); //true
Оператор >= возвращает true, если левый операнд больше правого операнда или равен ему.
Пример 7. Оператор меньше
const a = 3, b = 2;
// оператор меньше
console.log(a < 2); // false
console.log(b < 3); // true
Оператор < возвращает true, если левый операнд меньше правого операнда.
Пример 8. Оператора меньше или равно
const a = 2;
// оператор меньше или равно
console.log(a <= 3) // true
console.log(a <= 2); // true
Оператор <= возвращает true, если левый операнд меньше правого операнда или равен ему.
Логические операторы в JavaScript
Логические операторы выполняют логические операции И (AND), ИЛИ (OR) и НЕ (NOT).
| Оператор | Описание | Использование |
| && | Логическое И: возвращает true, если оба операнда true. В остальных случаях false. |
|
| || | Логическое ИЛИ: возвращает false, если оба операнда false. В остальных случаях true. | true || false; // true |
| ! | Логическое НЕ: возвращает true, если операнд false. Возвращает false, если операнд true. |
!true; // false |
Пример 1. Логический оператор AND
const a = true, b = false;
const c = 4;
// логическое И
console.log(a && a); // true
console.log(a && b); // false
console.log((c > 2) && (c < 2)); // false
Оператор && возвращает true, если оба операнда true, иначе возвращает false.
Примечание. Логические операторы можно использовать и с числами. В JavaScript 0 оценивается как false, все ненулевые значения — true.
Пример 2. Логический оператор OR
const a = true, b = false, c = 4;
// логическое ИЛИ
console.log(a || b); // true
console.log(b || b); // false
console.log((c>2) || (c<2)); // true
Оператор || возвращает true, если хотя бы один из операндов true. Если оба операнда false, результат — false.
Пример 3. Логический оператор NOT
const a = true, b = false;
// логическое НЕ
console.log(!a); // false
console.log(!b); // true
Оператор ! возвращает true, если операнд false, и наоборот.