what's the difference between '==' and '==='
imagine u have two boxes, one with the number 5
and one with the string "5"
(a string is just text, even if it looks like a number).
==
(loose equality)
- What it does: It checks if the things inside the boxes look the same, even if the boxes are different types.
- Example: If you use
==
to compare the number5
and the string"5"
, it will say they are the same because it tries to convert them to the same type before comparing.
5 == "5" // true
Even though one is a number and the other is a string, ==
will say, "Hey, these look the same!"
===
(strict equality)
- What it does: It checks if both the value and the type (number, string, etc.) are the same.
- Example: If you use
===
to compare the number5
and the string"5"
, it will say they are not the same because one is a number and the other is a string.
5 === "5" // false
Here, ===
will say, "Wait a minute, one is a number and the other is a string. They are different!"
If you want to be super sure everything matches exactly, use ===
. If you just care about the value and not the type, you can use ==
.
Leave a Comment