var obj = {};
1, 转化成 JSON 字符串
console.log(JSON.stringify(obj)==="{}");
2, 利用 Es6 遍历对象的属性: Object.keys(obj)
console.log(Object.keys(obj).length===0);
3, 利用 Es6 遍历对象的属性: Object.getOwnPropertyNames(obj)
console.log(Object.getOwnPropertyNames(obj).length===0)
4, 利用 Es6 遍历对象的属性: Reflect.ownKeys(obj)
console.log(Reflect.ownKeys(obj).length===0)
* IE 兼容有问题, 提示:"Reflect" 未定义
Object.keys(obj),Object.getOwnPropertyNames(obj),Reflect.ownKeys(obj)
返回的都是一个数组, 用数组长度, 就能判断是否空对象了!
5, jQuery 源码里判断空对象: for ... in
- function isEmptyObject(){
- var name;
- for (name in obj) {
- return false;
- }
- return true;
- }
- console.log(isEmptyObject(obj));
jQuery 用法
console.log($.isEmptyObject(obj));
来源: http://www.qdfuns.com/article/25669/183c496ce8ddfa984de6efb64ea503a1.html