原生js判断一个对象是否为空

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容