@bormor

Почему 0 == null // false?

Казалось бы, '==' запускает приведение к числу, т.е.

0 == null // true
Number(0) == Number(null) // true
0 === 0 // true

По факту 0 == null // false.

Почему так? Как это проходит по шагам?
  • Вопрос задан
  • 231 просмотр
Решения вопроса 2
@bormor Автор вопроса
"Значения null и undefined равны == друг другу и не равны чему бы то ни было ещё. Это жёсткое правило буквально прописано в спецификации языка." И.Кантор
Ответ написан
Комментировать
VoidVolker
@VoidVolker Куратор тега JavaScript
Dark side eye. А у нас печеньки! А у вас?
Потому что таковы спецификации языка. Вот тут полная таблица: https://dorey.github.io/JavaScript-Equality-Table/
И не дублируйте вопросы, пожалуйста, — читайте спецификации языка, там все есть.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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