js中一般判断一个对象是否为空,可以写一个方法用for..in遍历,然后返回是否为空,
function isEmptyObject(e) {
var t;
for (t in e)
return !1;
return !0
} ;
不过在ES5中对象有一个很奇妙的一个遍历对象的方法,Object.keys(object);
这个方法接受一个对象作为参数,对这个对象的键进行遍历,并返回一个数组集合。
到这里就显而易见了。判断数组为空有很多方法,取第一个元素、数组长短等都可以判断。
所以判断一个对象为空一个写为:
console.log(Object.keys({}).length); //结果是0, 0的布尔值是false。
注:不要使用Object.keys({})[0],因为对象的键可以为数字,类似jq对象就是数组为0的对象,
例子:Object.keys({ 0: '测试' })[0] //结果是0,其实我们期望的正确结果是true,但是这个确实false