JavaScript is known for its quirks, and one particularly perplexing behavior is how it handles addition with objects and arrays. Consider these two expressions:
console.log({} + {}); // NaN
console.log({} + []); // "[object Object]" (outputs "0" in some environments)
Why does adding two empty objects result in NaN, while