Javascript:比较三个 bool 值并返回所有真 bool 值

标签 javascript boolean-logic

我有一个方法 getPreferredfood()。它获得三个代表不同食物的 bool 值。无论哪一个是真的,你都归还它们。

getPreferredFood: function (){
 var item 1; 
 var item2 ;
 var item3;

 //comparison?

 return "Preferred food is " (whichever item was true)
 }

我不确定如何返回真实的项目。

最佳答案

将值存储在对象/ map 中:

var options = {
  a: true,
  b: true,
  c: false,
};

使用Object.keys获取名称并使用 .filter在该数组上过滤掉那些 false:

Object.keys(options).filter(function(x) {
  return options[x];
});
// ['a', 'b']

关于Javascript:比较三个 bool 值并返回所有真 bool 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38907783/

相关文章:

javascript - Angular UI-Grid 自定义过滤器按钮

javascript - Javascript中的addEventListener自动触发点击事件

java - 处理多个 boolean 组合

C位 bool 逻辑

c - 测试while多种条件(C语言)

javascript - 评估在 JavaScript 中给出 bool 表达式的字符串

javascript - 在不中断表单发布的情况下设置 Angular 变量

javascript - 从字符串变量调用 Redux 的调度函数

javascript - 使用 Node.js 和 Express 提交表单时如何发送日期

c# - c#中的 boolean 聚合模式