首页 > 解决方案 > 将 JS 条件简化为 if else

问题描述

我试图将这个条件简化为 if((A && B && C) || (!A && !B && !C)){..} else {..}。

你能帮我解决这个问题吗?

标签: javascriptif-statementconditional-statements

解决方案


我会做这样的事情。

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";
    }
}


推荐阅读