In IE and Chrome, typing this into the JavaScript console throws an exception:
{} == false   // "SyntaxError: Unexpected token =="
However, all of these statements are evaluated with no problem:
false == {}   // false
({} == false) // false
var a = {};
a == false    // false
Is this intentional behavior? Why does this happen?
 
    