如何处理JavaScript条件语句中的可空对象

时间:2015-01-28 16:45:40

标签: javascript conditional-statements

我有一个可以设置为false或对象x.y.z的变量。

我想做这样的事情:

if (var1) {
  if (var1.x.y.z === 1) {
    // do stuff
  }
} else {
  // do something if var1 OR var1.x.y.z === 1 is false
}

我在设置此条件语句时遇到问题,而不必复制外部if语句和内部if语句的else代码。

1 个答案:

答案 0 :(得分:1)

尝试使用!!,这会评估变量是真实的还是虚假的。基本上如果var1不是假的,那么就是这样。如果var1不是字面上的假,那么"做东西"。

已编辑..您可以在线添加第二个测试。

if (!!var1 && var1.x.y.z === 1) {
    // do stuff
} else {
   // do other stuff
}