判断对象不为空可以有多种方法,以下是其中的几种:
1. 使用 Object.keys() 方法判断对象是否有属性
```
function isObjectEmpty(obj) {
return Object.keys(obj).length === 0;
}
```
2. 使用 for...in 循环遍历对象,如果有属性则不为空
```
function isObjectEmpty(obj) {
for (let key in obj) {
if (obj.hasOwnProperty(key)) {
return false;
}
}
return true;
}
```
3. 使用 JSON.stringify() 方法将对象转为字符串,判断字符串长度是否为2
```
function isObjectEmpty(obj) {
return JSON.stringify(obj) === '{}';
}
```
需要注意的是,以上方法在判断对象是否为空时都会忽略原型链上的属性,只会判断对象自身的属性。如果需要判断原型链上的属性,可以使用 Object.getOwnPropertyNames() 方法或者使用 for...in 循环并且使用 hasOwnProperty() 方法判断属性是否为自身属性。