Може, защото 1 се конвертира в булева стойност true, а 0 - във false.
От тук и следните проверки връщат true:
0 == false // вярно
1 == true // вярно
Ако се ползва тройно равенство обаче същите проверки връщат false, защото при тях се съблюдава въответствие и на типа, а не само на стойността:
0 === false // грешно
1 === true // грешно