Разница между «==» и «===» в 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);

Вывод:

Истинный

Ложь

То же самое происходит и в этом примере; Логические значения сравниваются вместо строк или целых чисел, но результат остается тем же.

Вывод 🏆

В заключение, «==» следует использовать, когда вы не хотите проверять тип переменной, и «===» следует использовать, когда вы хотите, чтобы тип проверялся строго. Рекомендуется использовать «===» и выполнять проверку типов при сравнении двух объектов или переменных.

Если вы сочтете это полезным, ставьте лайки 👏