В този урок ще научите за сравнителните оператори и логическите оператори с помощта на примери.
Оператори за сравнение на 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
и обратно.