| Сообщение от micscr | 
	| Если это не "объект" null. | 
	
null — это не объект.
	
	| Сообщение от micscr | 
	| Это такой прикол в js. | 
	
alert(typeof new Object());
alert(typeof new Array());
alert(typeof new Boolean(true));
alert(typeof new Number(true));
Все это объекты, почему поведение должно отличаться?
Точно так же не выполнится:
var a = new Number(0);
if (!a) {
    alert(1);
}
и
var a = new Object();
if (!a) {
    alert(1);
}
По спецификации логический оператор НЕ(!) возвращает false для Object:
http://javascript.ru/ecma/part11#a-11.4.9
http://javascript.ru/ecma/part9#a-9.2
Так что никаких приколов, все обосновано и описано 
