Рассмотрим пустой массив JavaScript:
var a = []; alert(a == false); // shows true alert(!a); // shows false!
Как это объяснить? Каковы правила?