Comparaison et opérateurs logiques sont utilisés pour tester true ou false .
opérateurs de comparaison
Les opérateurs de comparaison sont utilisés dans les états logiques pour déterminer l'égalité ou la différence entre les variables ou valeurs.
Étant donné que x = 5 , le tableau ci - dessous explique les opérateurs de comparaison:
Opérateur | La description | Comparant | résultats | Essayez-le |
---|---|---|---|---|
== | égal à | x == 8 | false | Essayez - le » |
x == 5 | true | Essayez - le » | ||
x == "5" | true | Essayez - le » | ||
=== | valeur égale et le type égale | x === 5 | true | Essayez - le » |
x === "5" | false | Essayez - le » | ||
!= | inégal | x != 8 | true | Essayez - le » |
!== | valeur différente ou d'un type pas égal | x !== 5 | false | Essayez - le » |
x !== "5" | true | Essayez - le » | ||
x !== 8 | true | Essayez - le » | ||
> | plus grand que | x > 8 | false | Essayez - le » |
< | moins que | x < 8 | true | Essayez - le » |
>= | Plus grand ou égal à | x >= 8 | false | Essayez - le » |
<= | inférieur ou égal à | x <= 8 | true | Essayez - le » |
Comment peut-il être utilisé
Les opérateurs de comparaison peuvent être utilisés dans les instructions conditionnelles pour comparer les valeurs et prendre des mesures en fonction du résultat:
if (age < 18) text = "Too young";
Vous en apprendrez plus sur l'utilisation des instructions conditionnelles dans le chapitre suivant de ce tutoriel.
opérateurs logiques
Les opérateurs logiques sont utilisés pour déterminer la logique entre les variables ou valeurs.
Étant donné que x = 6 et y = 3 , le tableau ci - dessous explique les opérateurs logiques:
Opérateur | La description | Exemple | Essayez-le |
---|---|---|---|
&& | and | (x < 10 && y > 1) is true | Essayez - le » |
|| | or | (x == 5 || y == 5) is false | Essayez - le » |
! | not | !(x == y) is true | Essayez - le » |
(Ternaire) Opérateur conditionnel
JavaScript contient également un opérateur conditionnel qui attribue une valeur à une variable en fonction de certaines conditions.
Syntaxe
variablename = ( condition ) ? value1 : value2
Exemple
Si l'âge variable est une valeur inférieure à 18, la valeur de la variable ne sera voteable "Trop jeune", sinon la valeur de voteable sera "assez vieux".
En comparant les différents types
La comparaison des données de types différents peut donner des résultats inattendus.
Lorsque l'on compare une chaîne avec un certain nombre, JavaScript convertit la chaîne en nombre lorsque vous faites la comparaison. Une chaîne vide convertit à 0. Une chaîne non numérique se transforme en NaN qui est toujours faux.
Cas | Valeur | Essai |
---|---|---|
2 < 12 | true | Essayez - le » |
2 < "12" | true | Essayez - le » |
2 < "John" | false | Essayez - le » |
2 > "John" | false | Essayez - le » |
2 == "John" | false | Essayez - le » |
"2" < "12" | false | Essayez - le » |
"2" > "12" | true | Essayez - le » |
"2" == "12" | false | Essayez - le » |
Lorsque l'on compare deux chaînes, "2" sera supérieure à "12", parce que (par ordre alphabétique) 1 est inférieur à 2.
Pour obtenir un bon résultat, les variables doivent être converties dans le type approprié avant la comparaison:
age = Number(age);
if (isNaN(age)) {
voteable = "Error in input";
} else {
voteable = (age < 18) ? "Too young" : "Old enough";
}
Essayez - le vous - même » Opérateurs sur les bits JavaScript
opérateurs de bits fonctionnent sur le nombre 32 bits.
Des opérandes numériques dans l'opération est converti en un nombre de 32 bits.
Le résultat est reconverti en un nombre JavaScript.
Opérateur | La description | Exemple | Pareil que | Résultat | Décimal |
---|---|---|---|---|---|
& | 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 |
Le tableau ci-dessus utilisent 4 bits exemples non signés. Mais JavaScript utilise 32 bits nombres signés.
À cause de cela, en JavaScript, ~ 5 ne reviendra pas 10. Il reviendra -6:
~ 00000000000000000000000000000101 retournera 11111111111111111111111111111010
Testez-vous avec des exercices!
Exercice 1 » Exercice 2» Exercice 3 » Exercice 4» Exercice 5 » Exercice 6»