1.将对象转换为字符串进行比较
stringify用于从一个对象解析出字符串
var a = {};//通过对象字面量方式创建的空对象 var b = new Object();//通过Object构造函数创建的空对象 console.log("对象字面量方式:"+(JSON.stringify(a) == "{}")); console.log("构造函数方式:"+(JSON.stringify(b) == "{}"));
运行结果:
2.使用for in循环可以遍历对象所有属性来判断对象是否为空对象
for...in 语句用于对数组或者对象的属性进行循环操作。
1 var a = {};//通过对象字面量方式创建的空对象 2 var b = new Object();//通过Object构造函数创建的空对象 3 var c = {a:3}; 4 function isEmptyObject(obj) { 5 for(var key in obj) {//如果不为空,则会执行到这一步,返回false 6 return false; 7 } 8 return true;//如果为空,则会执行到这一步,返回true 9 } 10 console.log("对象a:"+isEmptyObject(a)); 11 console.log("对象b:"+isEmptyObject(b)); 12 console.log("对象c:"+isEmptyObject(c));
运行结果:
参考博客:http://www.cnblogs.com/wangxiaosan/p/5703449.html