1、JSON.stringify()
var b = {}
return JSON.stringify(b) === '{}'
2、for…in
for…in可以遍历对象及对象原型上的可枚举属性
注意: js中的基本包装类型的原型属性是不可枚举的,比如Object,Array,Number等
function isEmpty(obj){
for(let n in obj){
if(Object.hasOwnProperty(n)){
return false
}
}
//排除null,undefined,0,'',[],任意数字的影响
if(typeof obj !== Object || obj == null || Array.isArray(obj)){
return false
}
return true
}
3.Object.keys()
对象自身上的可枚举属性,返回一个数组
function isEmpty(obj){
//排除0,'',[],任意数字的影响
return Object.keys(obj).length === 0 && typeof obj === Object && arr.isArray(obj)
}