JavaScript中推断一个对象是否为"空对象”

时间:2022-01-06 17:14:06

JavaScript中推断一个对象是否为"空对象"

这里指的“空对象”是类似于:{ } 和 new Object() 这种。
详细的代码实现和原理例如以下:
// 所谓"空对象",即不包含不论什么可枚举(自己定义)的属性。

简而言之,就是该对象没有属性能够通过for...in迭代。
// for-in循环会同一时候枚举非继承属性和从原型对象继承的属性,假设有。则马上返回false,否则默认返回true。 isEmptyObject: function (obj) { var prop; for ( prop in obj)
return false; return true;
}