javascript判断对象是否为空

创建时间:2015-01-18 14:35:56最后修改:2015-01-19 18:24:39

用javascript判断一个对象是否为空,这个对象已经定义过了,是个空对象,比如:var obj = {};

我们想要判断它是否为用if(obj){//xxx}这样的方式是有问题的,有些资料说要在if里面加一个!符号,obj就自动转换成bool类型了,如果对象为空的话,会转成false,反之会转成true。其实这种方法也是有问题的,有某些情况下判断也会不准确。

正确的用JS判断对象是否为空的方法是用jquery的isEmptyObject来判断,因此我们要判断一个js对象是否为空应该这样判断:

if($.isEmptyObject(obj))
{
    //xx
}

isEmptyObject其实是遍历对象的属性名来进行判断的:

isEmptyObject: function( obj ) { 
for ( var name in obj ) { 
return false; 
} 
return true; 
}