javascript - 是否有可能从多个条件中返回任何一个为真的条件(以一种简单的方式)?

标签 javascript arrays object if-statement ecmascript-6

这可能已经被多次回答,但我找不到任何好的答案。我可能没有在寻找正确的东西..

我有许多返回“开”或“关”的复选框。

req.query 返回这些复选框。

如果它们处于“开启”状态,我想将该特定键/值对推送到一个数组中,以便稍后在 mongoDB 中的查询中使用。我知道我可以使用 Object.entries(req.query) 循环遍历它们,但我只想知道是否有另一种方法,如下例所示。

let checkboxCol = [];
if (checkboxa, checkboxb, checkboxc, checkboxd) {
    checkboxCol.push(/* any checkbox that is "on" */);
}

最佳答案

使用过滤器:

let checkboxCol = Object.values(req.query).filter(({ isOn }) => isOn);

如果您的属性名称不同,将其替​​换为 isOn,如果该值不是 bool 值,则添加一个比较运算符 - 它可能如下所示:

let checkboxCol = Object.values(req.query).filter(({ on }) => on == "on");

关于javascript - 是否有可能从多个条件中返回任何一个为真的条件(以一种简单的方式)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57736541/

相关文章:

php - 关于 var_dump 输出的问题

javascript - 将 Prev Next 控件添加到 Carousel

javascript - PDF对象库: catching error - or how to know when my PDFObject is empty

javascript - Onchange 选择在 jquery 中每行的下一列输入字段上设置的项目值

javascript - JS 对象结构化和添加

c# - 按公共(public)属性对不同对象的列表进行排序

javascript - Node.js 子进程中的数据丢失

javascript - Aurelia - repeat.for 按值转换器排序在 IE 11 中失败

ios - 使用 SWIFT 在 PARSE 上保存日期数据和结果的最佳方法

ruby-on-rails - 组合具有相同符号值的哈希