判断是空对象还是空数组

方法一 利用JOSN.stringify()

   if(JSON.stringify(res.data) === '{}'){
          console.log('是对象')
       }else{
          console.log('是数组')
          this.data = res.data
        }

方法二Objeck.keys()
Objeck.keys()方法会返回一个由给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用 for…in 循环遍历该对象时返回的顺序一致,该方法属于 ES5 标准,IE9 以上和其它现代浏览器均支持。如果你很不幸的需要兼容 IE9以下浏览器,那就用 for…in 代替吧。但是,for…in 会将对象原型链上的属性也枚举出来,因此还需要加个判断。

	for(var key in obj) {
	    if(obj.hasOwnProperty(key)) {
	        return false;
	    }
	}

方法三 isPrototypeOf()
isPrototypeOf()方法用于测试一个对象是否存在于另一个对象的原型链上。即判断Object是否存在于obj的原型链上

if(Array.prototype.isPrototypeOf(obj)&&obj.length === 0){return true;}
if(Object.prototype.isPrototypeOf(obj)&&Object.keys(obj).length === 0){return true;}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值