javascript - 将 JS 条件简化为 if else
问题描述
我试图将这个条件简化为 if((A && B && C) || (!A && !B && !C)){..} else {..}。
你能帮我解决这个问题吗?
解决方案
我会做这样的事情。
switch (4 * A + 2 * B + C) {
case 0:
console.log("None");
break;
case 1:
console.log("C");
break;
case 2:
console.log("B");
break;
case 3:
console.log("B,C");
break;
case 4:
console.log("A");
break;
case 5:
console.log("A,C");
break;
case 6:
console.log("A,B");
break;
case 7:
console.log("A,B,C");
break;
}
请参阅演示。
for (const A of [false, true]) {
for (const B of [false, true]) {
for (const C of [false, true]) {
console.log(test(A, B, C));
}
}
}
function test(A, B, C) {
switch (4 * A + 2 * B + C) {
case 0:
return "None";
case 1:
return "C";
case 2:
return "B";
case 3:
return "B,C";
case 4:
return "A";
case 5:
return "A,C";
case 6:
return "A,B";
case 7:
return "A,B,C";
}
}
推荐阅读
- python-3.x - 仅当行不存在时才写入 CSV
- android - 页面必须填满整个 ViewPager2(使用 match_parent)
- android - 观察未使用 LiveData 调用
- ruby-on-rails-5 - 在活动管理员的编辑表单上添加链接
- excel - Excel VBA - 电子邮件主题行包含偏移单元格的值
- c++ - 元组适用于 nullptr 但不适用于 NULL
- javascript - UI 上的聊天助手图标需要滚动(从左到右)效果
- python - 冒泡/合并排序算法类型:需要更正证明
- c++ - Error-addresssanitizer-negative-size-param-size-(-4)
- linux - 从 Rundeck (Linux) 运行命令的问题