1、Object.keys()
Object.keys() 返回一个由给定对象自身的可枚举的字符串键属性名组成的
数组
console.log(Object.keys(obj));
if (Object.keys(obj).length == 0) {
console.log('空');
} else {
console.log('非空');
}
2、JSON.stringify()
// JSON.stringify()方法可以将对象转换为`字符串`,通过字符串判断对象是否为空:
console.log(JSON.stringify(obj));
if (JSON.stringify(obj) == '{}') {
console.log('空');
} else {
console.log('非空');
}
3、Object.getOwnPropertyNames
Object.getOwnPropertyNames 方法返回一个
数组,其包含给定对象中所有自有属性(包括不可枚举属性,但不包括使用 symbol 值作为名称的属性
if (Object.getOwnPropertyNames(obj).length == 0) {
console.log('空');
} else {
console.log('非空');
}
4、Object.values
返回一个给定对象的自有可枚举字符串键属性值组成的
数组。
5、Reflect.ownKeys()
Reflect.ownKeys() 返回一个由目标对象自身的属性键组成的
数组。
if (Reflect.ownKeys(obj).length == 0) {
console.log('空');
} else {
console.log('非空');
}
文章介绍了JavaScript中检测对象是否为空的六种方法,包括Object.keys、JSON.stringify、Object.getOwnPropertyNames、Object.values以及Reflect.ownKeys。这些方法分别通过检查对象的可枚举属性、字符串化后的表示、所有自有属性和自身属性键来判断对象是否为空。
1871

被折叠的 条评论
为什么被折叠?



