JavaScript 如何判断一个对象{}是否为空对象

做项目时遇到一个问题,判断一个对象是否为空对象,发现这样判断可以,上代码:
1. 代码1:

var a = {};
if(!a){ console.log(1);}
else if(a == null) { console.log(2);} 
else { console.log(3);}

结果为:3
2. 代码2:

var b = {};
if(b == {}){ console.log(4);}
if(b == '{}') { console.log(5);} 
if(typeof(b) == 'object') { console.log(6);}

结果为:6
3. 代码3:

var c = {};
if(JSON.stringify(c) == "{}"){ console.log(7);}

结果为:7
所以可以使用代码3的方法判断对象是否为空对象{};
如果对象不为空,并且知道对象不为空时,某个属性(比如{id:111})一定存在,则可以里这样判断:
4. 代码4:

var d = {};
var e = {id:111};
if(d.id){ console.log(8);}
if(e.id){ console.log(9);}

结果为:9
小结:显然代码3的判断方式比较“强势”,但效率明显不如代码4的判断方法

评论 4 您还未登录,请先 登录 后发表或查看评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页

打赏作者

weilan008

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值