Возможный дубликат:
Какое объяснение этих причудливых действий JavaScript, упомянутых в разговоре "Wat" для CodeMash 2012?
Я знаю, что когда []
принуждается к строке, он возвращает пустую строку (""
), а когда {}
принуждается к строке, она возвращает "[object Object]"
.
Когда я запускаю [] + {}
в консоли браузера Javascript, он возвращается, как я ожидал:
>> [] + {}
"[object Object]"
Но когда я запускаю {} + []
, он возвращает совершенно неожиданное значение:
>> {} + []
0
Что может заставить его вернуть 0
?