JS如何判断一个对象是否为空对象?

相信我们大家在处理逻辑时,都会遇到判断一个对象是否为空,今天就为大家整理一下常用的判断一个对象是否为空的方法

1、最常见的就是通过for…in…循环判断

	var obj = {};
	var isObj = function() {
	    for(var key in obj) {
	        return false; //循环遍历,如果里面有值就会走这一步,返回false
	    }
	    return true; //没有走这一步,就说明是个空对象
	}
	console.log(isObj());//true

2、将json对象转化为json字符串,再判断该字符串是否为"{}"
  JSON.stringify() 方法用于将 JavaScript 值转换为 JSON 字符串。

	var obj = {};
	var res = (JSON.stringify(obj) == "{}");
	console.log(res);//true

3、使用Object对象的getOwnPropertyNames方法,获取到对象中的属性名,存到一个数组中,返回数组对象,我们可以通过判断数组的length来判断此对象是否为空
注意:此方法可能不兼容ie低版本

	var obj = {};
	var res = Object.getOwnPropertyNames(obj);
	console.log(res.length == 0);//true

4、使用ES6的Object.keys()方法,原理跟第三种类似,会返回一个由一个给定对象的自身可枚举属性组成的数组。如果我们的对象为空,他会返回一个空数组,所以我们可以依靠Object.keys()这个方法通过判断它的长度来知道它是否为空。

	var obj= {};
	var res = Object.keys(obj);//[]
	console.log(res.length === 0);//true

今天的方法就总结到这,后续如果有什么简便的方法在更新

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>