这可能已经被回答了多次,但是我找不到任何好的答案。我可能不是在寻找正确的东西。
我有许多复选框返回“ on”或“ off”。
req.query返回这些复选框。
如果它们处于“打开”状态,我想将该特定的键/值对推送到一个数组,以供以后在mongoDB中的查询中使用。我知道我可以使用Object.entries(req.query)遍历它们,但是我只想知道是否可能有另一种方法,例如下面的示例。
let checkboxCol = [];
if (checkboxa, checkboxb, checkboxc, checkboxd) {
checkboxCol.push(/* any checkbox that is "on" */);
}
最佳答案
使用filter
:
let checkboxCol = Object.values(req.query).filter(({ isOn }) => isOn);
如果您的属性被称为其他属性,请将其交换为
isOn
,如果该值不是布尔值,则添加一个比较运算符-看起来可能像这样:let checkboxCol = Object.values(req.query).filter(({ on }) => on == "on");