Ultimele tutoriale de dezvoltare web
 

JavaScript Compararea și operatori logici


Comparație și operatorii logici sunt folosite pentru a testa pentru true sau false .


Operatorii de comparare

Operatorii de comparare sunt utilizate în declarații logice pentru a determina egalitatea sau diferență între variabile sau valori.

Având în vedere că x = 5 , tabelul de mai jos explică operatorii de comparație:

Operator Descriere Compararea Se intoarce Incearca-l
== egal cu x == 8false Incearca-l "
x == 5true Incearca-l "
x == "5" true Incearca-l "
=== valoare egală și de tip egal x === 5true Incearca-l "
x === "5" false Incearca-l "
!= nu este egal x != 8true Incearca-l "
!== valoare nu este egal sau tip nu este egal x !== 5false Incearca-l "
x !== "5" true Incearca-l "
x !== 8true Incearca-l "
> mai mare ca x > 8false Incearca-l "
< mai puțin decât x < 8true Incearca-l "
>= mai mare sau egal cu x >= 8false Incearca-l "
<= mai mică sau egală cu x <= 8true Incearca-l "

Cum poate fi folosit

Operatorii de comparare pot fi utilizate în declarații condiționale pentru a compara valorile și să ia măsuri, în funcție de rezultatul:

if (age < 18) text = "Too young";

Vei afla mai multe despre utilizarea declarațiilor condiționale în următorul capitol al acestui tutorial.


Operatori logici

Operatori logici sunt folosite pentru a determina logica dintre variabile sau valori.

Având în vedere că x = 6 și y = 3 , tabelul de mai jos explică operatorii logici:

Operator Descriere Exemplu Incearca-l
&&and (x < 10 && y > 1) is true Incearca-l "
||or(x == 5 || y == 5) is false Incearca-l "
!not !(x == y) is true Incearca-l "

Condiționat (Ternary) Operator

JavaScript conține, de asemenea, un operator condiționată, care atribuie o valoare unei variabile pe baza unor condiții.

Sintaxă

variablename = ( condition ) ? value1 : value2  

Exemplu

var voteable = (age < 18) ? "Too young":"Old enough";
Încearcă - l singur »

În cazul în care vârsta variabilă este o valoare sub 18, valoarea variabilei voteable va fi "Too young" , în caz contrar valoarea voteable va fi "Old enough" de "Old enough" .


Compararea diferitelor tipuri

Comparând datele de tipuri diferite pot da rezultate neașteptate.

Atunci când se compară un șir cu un număr, JavaScript va converti șirul de la un număr atunci când faci comparația. Un șir gol convertește la 0. Un șir de nenumerică convertește la NaN care este întotdeauna fals.

Caz Valoare Încerca
2 < 12true Incearca-l "
2 < "12" true Incearca-l "
2 < "John" false Incearca-l "
2 > "John" false Incearca-l "
2 == "John" false Incearca-l "
"2" < "12" false Incearca-l "
"2" > "12" true Incearca-l "
"2" == "12" false Incearca-l "

La compararea a două șiruri, "2" , va fi mai mare decât "12" , pentru că (alphabetically) în (alphabetically) 1 este mai mică de 2.

Pentru a asigura un rezultat adecvat, variabile ar trebui să fie convertite la tipul adecvat înainte de comparație:

age = Number(age);
if (isNaN(age)) {
    voteable = "Error in input";
} else {
    voteable = (age < 18) ? "Too young" : "Old enough";
}
Încearcă - l singur »

Operatori la nivel de bit JavaScript

Operatorii de biți sunt pe 32 biți.

Orice Operandul numerică în operația este transformată într-un număr de 32 de biți.

Rezultatul este convertit înapoi la un număr JavaScript.

Operator Descriere Exemplu La fel ca Rezultat Zecimal
& AND x = 5 & 1 0101 & 0001 0001 1
| OR x = 5 | 1 0101 | 0001 0101 5
~ NOT x = ~ 5  ~0101 1010 10
^ XOR x = 5 ^ 1 0101 ^ 0001 0100 4
<< Left shift x = 5 << 1 0101 << 1 1010 10
>> Right shift x = 5 >> 1 0101 >> 1 0010 2

Tabelul de mai sus utilizarea 4 biți exemple fără semn. Dar JavaScript utilizează numere semnate pe 32 de biți.
Din acest motiv, în JavaScript, ~ 5 nu va reveni 10. Se va întoarce -6:
~ 00000000000000000000000000000101 va reveni 11111111111111111111111111111010

Exemplu

x = 5 & 1;

Rezultatul în x:

1
Încearcă - l singur »

Exemplu

x = 5 | 1;

Rezultatul în x:

5
Încearcă - l singur »

Exemplu

x = 5 >> 1;

Rezultatul în x:

2
Încearcă - l singur »

Exemplu

x = 5 << 1;

Rezultatul în x:

10
Încearcă - l singur »

Exemplu

x = ~ 5;

Rezultatul în x:

-6
Încearcă - l singur »

Testați-te cu exerciții!

Exercițiul 1 » Exercițiul 2» Exercițiul 3 » Exercițiul 4» Exercițiul 5 » Exercițiul 6»