Comparaison JavaScript et opérateurs logiques

Les opérateurs de comparaison et logiques sont utilisés pour tester true
ou
false
.
Opérateurs de comparaison
Les opérateurs de comparaison sont utilisés dans les instructions logiques pour déterminer l’égalité ou la différence entre des variables ou des valeurs.
Étant donné que x = 5
le tableau ci-dessous explique les opérateurs de comparaison :
Comment peut-il être utilisé
Les opérateurs de comparaison peuvent être utilisés dans des instructions conditionnelles pour comparer des valeurs et prendre des mesures en fonction du résultat :
if (age < 18) text = "Trop jeune pour acheter de l'alcool" ;
Vous en apprendrez plus sur l’utilisation des instructions conditionnelles dans le prochain chapitre de ce didacticiel.
Opérateurs logiques
Les opérateurs logiques sont utilisés pour déterminer la logique entre les variables ou les valeurs.
Étant donné que x = 6
et y = 3
le tableau ci-dessous explique les opérateurs logiques :
Opérateur | Description | Exemple | Essayez-le |
---|---|---|---|
&& | et | (x < 10 && y > 1) est vrai | Essayez-le » |
|| | ou | (x == 5 || y == 5) est faux | Essayez-le » |
! | pas | !(x == y) est vrai | Essayez-le » |
Opérateur conditionnel (ternaire)
JavaScript contient également un opérateur conditionnel qui attribue une valeur à une variable en fonction d’une condition.
Syntaxe
Nom de variable = (condition) ? valeur1:valeur2
Exemple
Si la variable age est une valeur inférieure à 18 ans, la valeur de la variable votable sera « Trop jeune », sinon la valeur de votable sera « Assez vieux ».
Comparer différents types
La comparaison de données de différents types peut donner des résultats inattendus.
Lors de la comparaison d’une chaîne avec un nombre, JavaScript convertira la chaîne en un nombre lors de la comparaison. Une chaîne vide est convertie en 0. Une chaîne non numérique est convertie en NaN
qui est toujours false
.
Lors de la comparaison de deux chaînes, « 2 » sera supérieur à « 12 », car (par ordre alphabétique) 1 est inférieur à 2.
Pour garantir un résultat correct, les variables doivent être converties dans le type approprié avant la comparaison :
âge = Nombre(âge);
si (estNaN(âge)) {
votable = « L’entrée n’est pas un nombre » ;
} autre {
votable = (âge < 18) ? "Trop jeune" : "Assez vieux" ;
}
Essayez-le vous-même »
L’opérateur de coalescence nulle (??)
Le ??
l’opérateur renvoie le premier argument s’il ne l’est pas nul
(null
ou undefined
).
Sinon, il renvoie le deuxième argument.
Exemple
laissez nom = null;
let text = « manquant » ;
laisser résultat = nom ?? texte;
Essayez-le vous-même »
L’opérateur nul est supporté dans tous les navigateurs depuis mars 2020 :
Chrome 80 | Bord 80 | Firefox 72 | Safari 13.1 | Opéra 67 |
février 2020 | février 2020 | janvier 2020 | mars 2020 | mars 2020 |
L’opérateur de chaînage facultatif (?.)
Le ?.
l’opérateur renvoie undefined
si un objet est
undefined
ou null
(au lieu de lancer une erreur).
Exemple
// Crée un objet :
const car = {type: »Fiat », model: »500″, color: »white »} ;
// Demander le nom de la voiture :
document.getElementById(« démo »).innerHTML = voiture?.nom ;
L’opérateur de chaînage facultatif est pris en charge dans tous les navigateurs depuis mars 2020 :
Chrome 80 | Bord 80 | Firefox 72 | Safari 13.1 | Opéra 67 |
février 2020 | février 2020 | janvier 2020 | mars 2020 | mars 2020 |
#Comparaison #JavaScript #opérateurs #logiques