Javascript 三值条件运算
我想用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' : ((
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