var foo = "0";
if(foo)
console.log(true);
else
console.log(false);
if(foo == true)
console.log(true);
else
console.log(false);
Выведет:
true
false
Очень странно, я всегда думал, что в инструкции if, идет приведение условия к булеву типу... Может кто раскроет мне глаза?