判断对象是否为空的方法

22 阅读1分钟

对象

在 JavaScript 中,对象是一组由键值对组成的无序集合,其中键是字符串类型,而值可以是任意数据类型,包括数字、字符串、布尔值、数组、甚至是另一个对象。对象是一种复合数据类型,用于保存和组织数据

空对象

一个空对象是指没有任何属性的对象,也就是没有任何键值对的对象。

1. JSON.stringify

使用 JSON.stringify 将输入对象转换为字符串。若对象为空,那么它会返回 - "{}"。

let myObj = {}; // 假设这是您的对象
if (JSON.stringify(myObj) === '{}') {
  console.log('对象为空');
} else {
  console.log('对象不为空');
}

2. Object.keys && Object.values

Object.keys() 方法的实现原理就是通过遍历对象的可枚举属性,将属性收集到一个新的数组中,最终返回该数组

Object.values() 方法的实现原理就是通过遍历对象的可枚举属性,将属性值收集到一个新的数组中,最终返回该数组

const myObj = { a: 1, b: 2, c: 3 };
const valuesArr = Object.keys(myObj); 
const valuesArr = Object.values(myObj); 
console.log(valuesArr); // [a, b, c]
  1. 使用 for...in

如果对象不为空,就会进到循环里,如果为空,就会走循环外的代码。

function(obj) {
    for (let i in obj){
        return '不为空';
    }
    return '空对象';
};