Tavion
@Tavion
front-end developer

Есть ли разница при сравнении булевых значений между != true и === false?

Есть ли разница при сравнении булевых значений между != true и === false?
  • Вопрос задан
  • 303 просмотра
Решения вопроса 2
vladqwerty
@vladqwerty
Web developer
Если начать копать, то при (x != true ) вернет true не только при x == false, а т.ж. если x == 0, x == undefined и т.д., а при сравнении с конкретно false, используя именно строгое сравнение === false, true вернется только если x === false, в остальных случаях надо экспериментировать)
Ответ написан
Комментировать
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
Если вы сравниваете именно булевые значения, то разницы нет (потому что "==" и "===" будут работать одинаково, если типы не нужно приводить):
true != true -> false
true === false -> false
false != true -> true
false === false -> true

А если у вас идет приведение типов, то разница, разумеется, есть:
"" != true -> true
"" === false -> false
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы