多个或在if语句中

问题描述 投票:0回答:1

我正在写一个if语句,里面有多个或者在其中。如果validate1返回true,则不执行validate2validate3。但我需要它来检查validate2validate3

我不能在这里使用&&,因为我尝试过它并不能满足我的期望。而且我不想写多个if

有没有办法用一个if语句来解决这个问题?

if (this.validate1(x, y) || this.validate2(a, b) || this.validate3(c, d))
{ }
else {
  showError();
}

我试过和情况。每个验证都会返回一个错误,如果其中一个正在通过验证,那么它将进入下一步。这不是我想要的。

而我写错了validate2validate3to也被检查。

javascript typescript
1个回答
2
投票

怎么样

var val2 = this.validate2(a, b);
if (this.validate1(x, y) || val2 || this.validate3(c, d))
{ }
else {
  showError();
}

这样,validate2将始终在不改变逻辑的情况下被调用。

© www.soinside.com 2019 - 2024. All rights reserved.