JS Какой оператор сравнения лучше использовать? == или ===?


#1

При программировании на js какой оператор сравнения лучше использовать? == или ===? Отчего может зависеть выбор используемого оператора? И существует ли какая-то разница в производительности их работы?


#2

Разница между этими операторами состоит в том, что оператор === сравнивает типы операндов, поэтому, например следующие проверки будут выдавать false (поскольку типы операндов несовпадают):

'1' === 1
true === 1
'1' === true

если бы эти проверки проводились с использованием оператора ==, тогда бы они вернули true. Исходя из этого нужно выбирать какой оператор при проверки на равенство использовать.

Если и существует, то не очень большая, можете посмотреть алгоритмы работы данных операторов в документации и сравнить их.