Разница между «==» и «===» в JavaScript
Это одно из основных отличий, которое вы должны усвоить, если вы новичок в мире JavaScript.
В одной строке оператор «==» проверяет абстрактное равенство, а оператор «===» проверяет строгое равенство типов. Преобразование типов выполняется автоматически путем сравнения равенства «==», в то время как «===» не выполняет преобразование типов.
Пример 1 🥇
document.write(10 == "10");
document.write(10 === "10");
Вывод:
Истинный
Ложь
Первое сравнение вернет true, даже если оно сравнивается со строкой, а второе вернет false, потому что «===» выполняет строгую проверку типов.
Пример 2 🥈
document.write("Hello World" == new String("Hello World");
document.write("Hello World" === new String("Hello World");
Вывод:
Истинный
Ложь
Здесь снова первое сравнение возвращает true, а второе сравнение возвращает false из-за сравнения типов во втором выражении, когда строка сравнивается с объектом.
Пример 3 🥉
document.write('0' == false);
document.write('0' === false);
Вывод:
Истинный
Ложь
То же самое происходит и в этом примере; Логические значения сравниваются вместо строк или целых чисел, но результат остается тем же.
Вывод 🏆
В заключение, «==» следует использовать, когда вы не хотите проверять тип переменной, и «===» следует использовать, когда вы хотите, чтобы тип проверялся строго. Рекомендуется использовать «===» и выполнять проверку типов при сравнении двух объектов или переменных.
Если вы сочтете это полезным, ставьте лайки 👏