首页 > 解决方案 > 嵌套 if else 语句,如果第二个 if 失败怎么去 else?

问题描述

我有一个嵌套if...else块。

我想要一个初始条件,如果它通过条件,它应该检查下一个条件。如果第二个条件失败,我希望它执行一个 else 块。

是否可以通过声明来做到这一点,if...else或者我应该使用其他东西?

这是一个例子:

let x = 1;
let y = 2;
let z = 3;

if (x == 1) {
  console.log(x)
// the below statement would fail and I would like the else block to execute now, console.log(z)
  if (y == 3) {
    console.log(y)
  } 
} else {
  console.log(z);
}

编辑:

我的问题是,如果 2 个条件中的任何一个失败,我需要运行相同的代码,而我不知道该怎么做。

if (condition == true) {
  if (condition == true) {
    func1()
  } else {
   ApiCall1()
    }
  } else {
   ApiCall1()
 }

有人告诉我我不能为 创建函数APiCall1,我必须把它全部写出来,所以我不能ApiCall1在两个块中复制和粘贴代码,因为它有 30 行长。我应该在这里做什么?

标签: javascript

解决方案


else为了补充其他答案,如果第一个条件失败,我不确定是否要执行该块。如果是这种情况,那么您可以尝试:

if (x == 1 && y == 3) {
    console.log(x)
    console.log(y)
} else if (x == 1) {
    console.log(x)
} else {
    console.log(z)
}

您重复一些代码,但我认为没有其他方法可以做到这一点,至少没有我能想出的方法。

编辑:

在您编辑之后,我认为这个解决方案更有意义,这样您就可以ApiCall1在上面我的解决方案的 else 块中获得您的代码。


推荐阅读