Я отлаживал что-то и обнаружил некоторую странность в JavaScript:
alert(1=='') ==> false
alert(0=='') ==> true
alert(-1=='') ==> false
Было бы разумно, что подразумеваемое сравнение строк, которое должно быть 0, равно '0'. Это верно для всех ненулевых значений, но почему не для нуля?