JS判断空对象的五种方法
方案一
通过将对象转为字符串来判断
var data = {};
console.log(JSON.stringify(data) === '{}') // true
方案二
通过判断对象自身,是否具有key 值来判断
var data = {};
console.log(Object.keys(data).length)// 0
方案三
与方案二类似 通过判断对象是否有value值来判断
var data = {};
console.log(Object.values(data).lenght)//0
方案四
for in 遍历判断自身是否存在属性
var data = {};
function isEmptyObject(obj){
for(key in obj){
if({}.hasOwnProperty.call(obj,key)) return false;
}
return true
}
console.log(isEmptyObject(data))//true
方案五
Objcet.getOwnPropertyNames()返回实例对象上的所有自身属性(包括不可枚举的属性)
var data = {};
console.log(Object.getOwnPropertyNames(data).length)//0