Égalité stricte vs faible
Fait partie de la section Fondamentaux du Journey JavaScript de Coddy — leçon 16 sur 77.
En JavaScript, il existe deux types d'opérateurs d'égalité : l'égalité faible (==) et l'égalité stricte (===).
L'égalité faible (==) vérifie si deux valeurs sont égales après avoir effectué une coercition de type. Cela signifie que si les opérandes ont des types différents, JavaScript tentera de les convertir en un type commun avant d'effectuer la comparaison.
Par exemple :
let b = 5 == "5"; // Vaut true, car la chaîne "5" est convertie en nombre 5 avant la comparaisonlet b = 0 == false; // Vaut true, car le booléen false est converti en nombre 0 avant la comparaisonL'égalité stricte (===), en revanche, vérifie si deux valeurs sont égales sans effectuer de conversion de type. Si les opérandes ont des types différents, ils sont considérés comme non égaux.
Par exemple :
let b = 5 === "5"; // Contient false, car aucune conversion de type n'est effectuée, et un nombre n'est pas égal à une chaîne de caractèreslet b = 0 === false; // Contient false, car aucune conversion de type n'est effectuée, et le nombre 0 n'est pas égal au booléen falseEn général, il est recommandé d'utiliser l'égalité stricte (===) dans la plupart des cas pour éviter des résultats inattendus dus à la coercition de type.
De même, il existe également des opérateurs d'inégalité large (!=) et d'inégalité stricte (!==) qui fonctionnent de manière similaire, mais vérifient l'inégalité au lieu de l'égalité.
L'inégalité non stricte (!=) vérifie si deux valeurs ne sont pas égales après avoir effectué une coercition de type, tandis que l'inégalité stricte (!==) vérifie si deux valeurs ne sont pas égales sans effectuer de conversion de type.
Défi
DébutantOn vous donne un code avec trois variables : a, b et c.
Votre tâche consiste à effectuer les comparaisons suivantes et à afficher les résultats :
- Vérifiez si
aest lâchement égal àbet stockez le résultat dansd. - Vérifiez si
aest strictement égal àcet stockez le résultat danse. - Vérifiez si
best lâchement non égal àcet stockez le résultat dansf. - Vérifiez si
aest strictement non égal àbet stockez le résultat dansg.
Utilisez les variables et les opérateurs de comparaison fournis pour accomplir la tâche.
Aide-mémoire
JavaScript possède deux types d'opérateurs d'égalité :
L'égalité faible (==) effectue une coercition de type avant la comparaison :
5 == "5" // true - la chaîne "5" est convertie en nombre 5
0 == false // true - le booléen false est converti en nombre 0L'égalité stricte (===) compare sans conversion de type :
5 === "5" // false - nombre vs chaîne, pas de conversion
0 === false // false - nombre vs booléen, pas de conversionDe même pour les opérateurs d'inégalité :
- Inégalité faible (
!=) - effectue une coercition de type - Inégalité stricte (
!==) - pas de conversion de type
Il est recommandé d'utiliser l'égalité stricte (===) pour éviter des résultats inattendus dus à la coercition de type.
Essayez vous-même
// Variables fournies
let a = 10
let b = "10"
let c = true
// Tapez votre code ci-dessous
// Ne modifiez pas la ligne ci-dessous
console.log(`d = ${d}`)
console.log(`e = ${e}`)
console.log(`f = ${f}`)
console.log(`g = ${g}`)Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
4Opérateurs Partie 2
Opérateurs logiques Partie 1Opérateurs logiques Partie 2Récapitulatif - Logique simpleOpérateurs logiques Partie 3Coercion de type7Calculateur de partage d'addition
Message de bienvenueCalcul du pourboire et du total10FizzBuzz avec une variante
Présentation du jeuLa fonction FizzBuzz13Suivi de liste de courses
Présentation du projetAjouter un article2Variables
NombresChaînes de caractèresBooléensConventions de nommageVariables videsRécapitulatif - Initialiser des variablesConstantes5Prise de décision
L'instruction IfIf - ElseRécapitulatif - Calculatrice simpleIf - Else imbriquésL'instruction Switch8Boucles
Boucle ForBoucle WhileBreakContinueRécapitulatif - FactorielleBoucle Do WhileBoucles imbriquées3Opérateurs - Partie 1
Opérateurs arithmétiquesOpérateur moduloRaccourcis arithmétiquesOpérateurs de comparaisonÉgalité stricte vs faibleRécapitulatif - Mathématiques simples6Entrées/Sorties de base
SortieSortie avec des variablesConversion de type - Partie 1Conversion de type - Partie 2Récapitulatif - Jusqu'à 120Récapitulatif - Vrai ou Faux