Ответ
Использую == редко, так как он выполняет нестрогое сравнение с приведением типов, что может привести к неожиданным результатам. Например:
5 == '5' // true
0 == false // true
null == undefined // true
Всегда предпочитаю === (строгое сравнение), которое проверяет и значение, и тип. Это делает код более предсказуемым и безопасным. Исключение — случаи, когда нужно явно разрешить приведение типов, но такие ситуации крайне редки.
Ответ 18+ 🔞
Вот ты сидишь, пишешь свой код, всё пучком, и тут — бац! — на тебе 5 == '5' возвращает true. Ну и пиздец, да? Как будто число пять и строка "пять" — это одно и то же, блядь! Это ж как в анекдоте про Герасима: "Муму!" — а ему в ответ: "Да это же просто мешок, ёпта!"
Вот смотри, какие подлянки этот == вытворяет:
0 == false // true — ноль и ложь, близнецы-братья, блядь!
null == undefined // true — ну, типа, оба ничто, давай пожмём руки, ебать!
А теперь представь, у тебя в коде где-нибудь в глубине логики закралась такая хуйня. И ты сидишь, чешешь репу: "Почему у меня функция не работает? Я ж всё проверил!" А оказывается, где-то затесался этот хитрожопый оператор, который тебе типы по-тихому меняет. Чистая трагедия, как у Тургенева, только вместо собаки — твой баг, который уже пол-проекта потопил.
Поэтому я, как тот самый здоровый немой татарин из истории, молчу и делаю по-своему. Беру === и — хуяк! — строгое сравнение. Оно как Герасим с метлой: ни хуя не пропустит. Число — так число, строка — так строка, false — так false. Никаких "ой, да ладно, пусть будет".
5 === '5' // false — вот теперь правильно, сука!
0 === false // false — ура, здравый смысл восторжествовал!
null === undefined // false — разные ничтожества, блядь, разные!
Исключения? Ну, может, когда ты специально хочешь эту цирковую магию с приведением типов, но это, ёпта, как нарочно себе в код мину замедленного действия закладывать. Подозрение ебать чувствую к таким трюкам.
Короче, правило простое: === — твой бронежилет от ебанутых багов. Используй его всегда, а == пусть идёт нахуй, в музей устаревших практик. И тогда твой код будет не "мумукать" от неожиданностей, а чётко и ясно работать. В рот меня чих-пых, вот что я думаю!