进行 JavaScript 中判断空对象可以有以下几种实现方法:
-
使用 Object.keys() 方法:使用该方法可以获取对象的所有属性名,然后判断属性名的数量是否为0。如果为0,则表示对象为空
function isEmptyObject(obj) { return Object.keys(obj).length === 0; }
2、使用 for...in 循环:通过遍历对象的属性,如果存在属性,则表示对象非空;否则为空。
function isEmptyObject(obj) { for (var key in obj) { if (obj.hasOwnProperty(key)) { return false; } } return true; }
3、使用 JSON.stringify() 方法:将对象转换成 JSON 字符串,然后判断字符串的长度是否为2,如果长度为2,则表示对象为空。
function isEmptyObject(obj) { return JSON.stringify(obj) === "{}"; }
需要注意的是,第三种方法适用于对象内部没有函数、Symbol 或日期对象的情况。