I was playing around with Chrome's Javascript console recently, and I discovered this oddity:
[] == true
false
[0] == true
false
[0] == []
false
This doesn't seem to make any sense at first glance (false != false), but I think the real reasoning lies in the polymorphism of the == operator. Comparing an array to a boolean isn't the same thing as comparing an array to another array.
With that said, what are other Javascript quirks you've discovered?