В этом руководстве вы узнаете об операторах сравнения и логических операторах с помощью примеров.
Операторы сравнения JavaScript
Операторы сравнения сравнивают два значения и возвращают логическое значение: или true
или false
. Операторы сравнения используются при принятии решений и циклах.
Оператор | Описание | пример |
---|---|---|
== | Равно : true если операнды равны | 5==5; //true |
!= | Не равно : true если операнды не равны | 5!=5; //false |
=== | Строго равно : true если операнды равны и одного типа | 5==='5'; //false |
!== | Строгое не равно : true если операнды равны, но разного типа или не равны вообще | 5!=='5'; //true |
> | Больше, чем : true если левый операнд больше правого операнда | 3>2; //true |
>= | Больше или равно : true если левый операнд больше или равен правому операнду | 3>=3; //true |
< | Меньше чем : true если левый операнд меньше правого операнда | 3<2; //false |
<= | Меньше или равно : true если левый операнд меньше или равен правому операнду | 2<=2; //true |
Пример 1: оператор равно
const a = 5, b = 2, c = 'hello'; // equal to operator console.log(a == 5); // true console.log(b == '2'); // true console.log(c == 'Hello'); // false
==
оценивает true
равенство операндов.
Примечание . В JavaScript ==
- это оператор сравнения, тогда как =
- оператор присваивания. Если вы по ошибке используете =
вместо ==
, вы можете получить нежелательный результат.
Пример 2: не равно оператору
const a = 3, b = 'hello'; // not equal operator console.log(a != 2); // true console.log(b != 'Hello'); // true
!=
оценивается, true
если операнды не равны.
Пример 3: строгое равенство оператору
const a = 2; // strict equal operator console.log(a === 2); // true console.log(a === '2'); // false
===
оценивается, true
если операнды равны и одного типа. Здесь 2 и «2» - одинаковые числа, но тип данных разный. А ===
также проверяет тип данных при сравнении.
Примечание : разница между ==
и ===
заключается в том, что:
==
оценивается, true
если операнды равны, однако ===
оценивается true
только в том случае, если операнды равны и одного типа
Пример 4: Строгое не равно оператору
const a = 2, b = 'hello'; // strict not equal operator console.log(a !== 2); // false console.log(a !== '2'); // true console.log(b !== 'Hello'); // true
!==
оценивается, true
если операнды строго не равны. Это полная противоположность строго равному ===
.
В приведенном выше примере 2 != '2'
дает true
. Это потому, что их типы различны, даже если они имеют одинаковое значение.
Пример 5: оператор "больше, чем"
const a = 3; // greater than operator console.log(a> 2); // true
>
оценивается, true
если левый операнд больше правого.
Пример 6: Оператор больше или равно
const a = 3; // greater than or equal operator console.log(a>= 3); //true
>=
оценивается, true
если левый операнд больше или равен правому операнду.
Пример 7: Оператор меньше чем
const a = 3, b = 2; // less than operator console.log(a < 2); // false console.log(b < 3); // true
<
оценивается, true
если левый операнд меньше правого операнда.
Пример 8: Оператор меньше или равно
const a = 2; // less than or equal operator console.log(a <= 3) // true console.log(a <= 2); // true
<=
оценивается, true
если левый операнд меньше или равен правому операнду.
Логические операторы JavaScript
Логические операторы выполняют логические операции: И , ИЛИ и НЕ .
Оператор | Описание | пример |
---|---|---|
&& | Логическое И : true если оба операнда / логические значения истинны, иначе оценивается какfalse | true && false; // false |
|| | Логическое ИЛИ : true если любой из операндов / логических значений равен true . оценивается, false если обаfalse | true || false; // true |
! | Логическое НЕ : true если операнд - false и наоборот. | !true; // false |
Пример 9: Логический оператор И
const a = true, b = false; const c = 4; // logical AND console.log(a && a); // true console.log(a && b); // false console.log((c> 2) && (c < 2)); // false
&&
оценивает, true
если оба операнда равны true
, иначе оценивает false
.
Примечание. Вы также можете использовать логические операторы с числами. В JavaScript 0 false
и все ненулевые значения true
.
Пример 10: логический оператор ИЛИ
const a = true, b = false, c = 4; // logical OR console.log(a || b); // true console.log(b || b); // false console.log((c>2) || (c<2)); // true
||
оценивается, true
если какой-либо из операндов true
. Если оба операнда - false
результат false
.
Пример 11: Оператор логического НЕ
const a = true, b = false; // logical NOT console.log(!a); // false console.log(!b); // true
!
оценивает, является true
ли операнд, false
и наоборот.