Quelle est la différence entre =, == et === en JavaScript ?

Article publié le et mis à jour le .

Quelle est la différence entre =, == et === en JavaScript ?

Vous ne comprenez pas la différence entre == et === en JavaScript ?

Il existe trois manières d’utiliser les opérateurs = en JavaScript en fonction de différents cas d’utilisation.

En effet, vous avez peut-être recontré l’opérateur égal sous difféntes formes :

  • l’opérateur = (égal)
  • l’opérateur == (double égal)
  • l’opérateur === (triple égal)
Nom Opérateur Explication
Égal d’affectation a = b a = b
Comparaison implicite (==) 42 == ‘42’ Pas typé
Comparaison explicite (===) 42 === 42 Typé

Voyons ensemble quelles sont les différences entre =, == et === en JavaScript.

Quand utiliser = en JavaScript ?

L’égalité (=) en JavaScript est un opérateur très différent du double égal (==) et du triple égal (===). Cet opérateur, connu sous le nom d’opérateur d’affectation, est utilisé pour attribuer des valeurs aux variables.

const variable = "CommentCoder.com"

Dans cet exemple, nous avons utilisé l’opérateur = (égal) pour attribuer la valeur “CommentCoder.com” à la variable “variable”.

Quand utiliser == en JavaScript ?

L’opérateur double égal (==) en JavaScript est similaire à l’opérateur triple égal (===) car ils sont considérés comme des opérateurs de comparaison. Toutefois, l’opérateur == (double égal) est utilisé pour trouver une égalité abstraite. Cela signifie que le double égal (==) effectue une conversion de type pour l’utilisation et compare ensuite les deux valeurs.

L’exemple suivant donnera la valeur trye parce que l’opérateur double equal effectuera ce qu’on appelle une coercition de type et convertira les deux valeurs au même type avant de les comparer.

if (42 == "42") {
  // true
}

L’utilisation de cet opérateur dépend de votre code. Si vous devez vous assurer que les variables ont le même type, utilisez plutôt l’opérateur triple égal (===).

Quand utiliser === en JavaScript ?

L’opérateur triple égal (===) est considéré comme un opérateur de comparaison strict en JavaScript. On utilise cet opérateur quand on veut comparer deux valeurs en tenant compte des types. En reprenant l’exemple précédent, vous obtiendriez la réponse inverse.

if (42 === "42") {
  // false
}

Les autres opérations opérateurs avec l’opérateur égal

Félicitations ! Vous savez maintenant quelles sont les différences entre =, == et === en JavaScript ! Mais comme souvent en programmation, quand vous découvrez quelque chose de nouveau, vous vous rendez compte que vous pouvez aller plus loin. C’est pour cette raison que j’ai compilé un tableau avec les autres opérateurs qui utilisent un = :

Nom affectation Opérateur Explication
Addition a += b a = a + b
Soustraction a -= b a = a - b
Multiplication a *= b a = a * b
Division a /= b a = a / b
Du reste (modulo) a %= b a = a % b
Exponentiation a **= b a = a ** b
ET binaire a &= b a = a & b
OU exclusif binaire a ^= b a = a ^ b
OU binaire a |= b a = a | b
Décaler à gauche a <<= b a = a << b
Décaler à droite a >>= b a = a >> b
Décaler à droite non signé a >>>= b a = a >>> b
Comparaison Opérateur Explication
Pas égal (!=) 42 != 30 Pas typé
Pas égal typé (!==) 42 !== ‘42’ Typé
Strictement supérieur (>) 42 > 2 Pas typé
Supérieur ou égal (>=) 42 >= 4 Pas typé
Strictement inférieur (<) 0 < 42 Pas typé
Inférieur ou égal (<=) 42 <= ‘42’ Pas typé

Les lecteurs de ce blog ont aussi aimé :

Le Cheat Sheet à avoir sous la main pour JavaScript

Les Librairies et Frameworks à connaître absolument en JS

Les meilleures formations JS en 2023

Votre propre bot discord en JS

Apprendre React JS en 2024