Javascript 三值条件运算

Javascript 三值条件运算,javascript,jquery,html,Javascript,Jquery,Html,我想用javascript三元操作实现下面的逻辑。这可能吗 if(condition1){ console.log("condition1 pass"); } else if(condition2){ console.log("condition2 pass"); } else{ console.log("It is different"); } 是的。使用以下逻辑: var output = ((condition1) ? 'condition1 pass' : ((

我想用javascript三元操作实现下面的逻辑。这可能吗

if(condition1){
    console.log("condition1 pass");
} else if(condition2){
    console.log("condition2 pass");
} else{
    console.log("It is different");
}

是的。使用以下逻辑:

var output = ((condition1) ? 'condition1 pass' : ((condition2) ? 'condition2 pass' : 'It is different'));

console.log(output)

当然,你只需要把一个三元结构放在另一个三元结构中:

如果
条件放入
零件中

console.log(
    condition1
        ? "condition1 pass"
        : condition2
            ? "condition2 pass"
            : "it is different"
);
最好不要这样做,因为语法很容易出错,而且很细,但是,如果它已经在函数中,您可以将其移动到函数或iLife,并直接返回结果以减少循环:

function testCondition(condition1, condition2){
    if(condition1){
        return "condition1 pass";
    } else if(condition2){
        return "condition2 pass";
    }
    return "It is different";
}

var conditionalPass = (function(condition1, condition2){
    if(condition1){
        return "condition1 pass";
    } else if(condition2){
        return "condition2 pass";
    }
    return "It is different";
})(condition1, condition2);

可以但不建议:

console.log(condition1? "condition1 pass": (condition2? "condition2 pass": "It is different"));

正如您所看到的,代码很难阅读。

这是可能的,但推荐使用

console.log(
    condition1?//if
        "condition1 pass":
    condition2?//else if
        "condition2 pass"://else
        "It is different"
)

正如您所看到的,它非常容易阅读。

函数三元(a,b){(a>b)?console.log(“a更大”):(a