方法1. JSON.stringify
// 转化为字符串再进行判断
let obj = {}
let obj1 = {a:1}
JSON.stringify(obj) == "{}" // true
JSON.stringify(obj1) == "{}" // false
方法2. Object.getOwnPropertyNames()
// 将对象的key转化为数组,判断数组长度就可以判断是否为空
let obj = {}
let obj1 = {a:1}
Object.getOwnPropertyNames(obj) // []
Object.getOwnPropertyNames(obj1) // ['a']
Object.getOwnPropertyNames(obj).length === 0 // true
方法3.Object.keys()
// 将对象的key转化为数组
let obj = {}
let obj1 = {a:1}
Object.keys(obj) // []
Object.keys(obj1) // ['a']
Object.keys(obj).length === 0 // true
方法4.Reflect.ownKeys()
// 将对象的key转化为数组
let obj = {}
let obj1 = {a:1}
Reflect.ownKeys(obj) // []
Reflect.ownKeys(obj1) // ['a']
Reflect.ownKeys(obj).length === 0 // true
方法5.Object.values()
// 将对象的value转化为数组
let obj = {}
let obj1 = {a:1}
Object.values(obj) // []
Object.values(obj1) // [1]
Object.values(obj).length === 0 // true
方法6.遍历
// 将对象的value转化为数组
let obj = {}
let obj1 = {a:1}
function func(obj){
let empty = true;
for (let key in obj) {
empty = false;
break;
}
return empty
}
console.log(func(obj), func(obj1)) // true false