javascript - 多个或在 if 语句中

标签 javascript typescript

我正在编写一个包含多个 or 的 if 语句。如果 validate1 返回 true,则不会执行 validate2validate3。但我需要它来检查 validate2validate3

我不能在这里使用&&,它没有满足我的期望。而且我不想写多个if

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

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

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

我写了一些错误的validate2validate3来检查。

最佳答案

怎么样

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

这样validate2将始终被调用而不改变逻辑。

关于javascript - 多个或在 if 语句中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49031469/

相关文章:

javascript - 与用 span 包围选择的函数相反

Javascript 数组对象属性未定义

javascript - Backbone.js 路由器未检测到 url 更改

javascript - 如何在 JavaScript 中创建对象数组?

javascript - 可以将 math.max 用于对象数组吗?

javascript - 更改 select2 ajax 标签中的选项数据值

javascript - "No ' Access-Control-Allow-Origin ' header is present on the requested resource"来自 http ://www. google.com/的响应错误

typescript - typescript 中的抽象函数返回类型

javascript - 在 mongodb 中保存和执行 IP 排序的最佳方法?

typescript - 使用回退时合并对象区分联合类型