在 CodeMash 2012 的 “Wat” 演讲中提到的这些怪异 JavaScript 行为的解释是什么?

Empty Array + Empty Array
[] + []
result:
<Empty String>
Empty Array + Object
[] + {}
result:
[Object]
Object + Empty Array
{} + []
result
[Object]
Object + Object
{} + {}
result:
[Object][Object]
Array(16).join("wat" - 1)
result:
NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaN

答案