javascript三元条件操作

时间:2016-02-06 11:45:14

标签: javascript jquery html

我想使用javascript三元操作实现以下逻辑。这可能吗?

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

4 个答案:

答案 0 :(得分:5)

当然,你只需要在另一个内部有一个三元组:

else if条件放入:部分。

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

最好不要这样做,因为语法容易出错并且很渺茫,但是,如果函数或IIFE已经在函数内部并将结果直接返回到函数中,则可以将其移动到函数或IIFE中减少循环:

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);

答案 1 :(得分:2)

是的,确实如此。使用以下逻辑:

thisCalendar.datepicker("option", "dateFormat", "dd MM yy");

答案 2 :(得分:1)

有可能但不推荐:

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

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

答案 3 :(得分:1)

这是可能的,但建议。

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

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