首页 > 解决方案 > 用多个 OR 条件编写 if 语句的更短方法?

问题描述

我正在编写一个将值插入数据库的函数。

我正在检查以确保用户在提交表单之前填写了所有字段。

如果不是,则会显示一条消息,要求填写所有字段。

if (!req.query.itemCode || !req.query.itemCode || !req.query.totalQuantity || !req.query.availableQuantity || !req.query.quantityRequested || !req.query.requestor || !req.query.projectNum || !req.query.projectDetails) return 

你可以看到,如果有 5+ 个值,它很快就会变成一个大的 if 语句

谢谢

标签: javascript

解决方案


您可以创建一个返回 bool 的特定函数并在 if 语句中调用此函数,这是正确的方法,因为如果您需要在其他地方进行相同的检查,您将调用该函数并避免代码重复。另外,您可以遍历 req.query 以检查 Null 值

for (var propName in req.query) {
    if (req.query.hasOwnProperty(propName)) {
        If (!req.query[propName]) { return false: }
    }
}

推荐阅读