如何将if语句中的空对象处理为false?

时间:2016-07-04 11:14:37

标签: javascript

我今天遇到了这个案子

if ({}) {
  // This is returned as empty object is true
}

因此需要找出{}为假的方法,尝试在我传递给if语句的对象上调用.length,但这不起作用。

2 个答案:

答案 0 :(得分:5)

您可以使用Object.keys()方法来实现此目标。

来自Mozilla的文档:

  

Object.keys()方法返回给定对象自己的可枚举属性的数组,其顺序与for ... in循环提供的顺序相同(不同之处在于{{1} }枚举原型链中的属性。)



for-in loop




答案 1 :(得分:1)

您可以尝试使用:

Object.keys(obj).length === 0;