Я читал Дуглас Крокфорд JavaScript: Хорошие части, и я наткнулся на этот странный пример, который мне не имеет смысла
'' == '0' // false
0 == '' // true
0 == '0' // true
false == undefined // false
false == null // false
null == undefined // true
Далее автор также упомянул "никогда не использовать ==
и !=
. Вместо этого всегда используйте ===
и !==
". Однако он не объясняет, почему проявляется вышеуказанное поведение? Итак, мой вопрос: почему эти результаты выше? Не рассматривается ли транзитивность в JavaScript?