我嵌套了if else语句,我在下面的两个语句中添加了这些语句,而不是使用很多行来简化它。
有人能帮帮我吗。
在下面的Statement1语句中: a&&b和C&&d,a,b,c,c是数组。在statement2中它是一个关键字。
Statement1:
if((a && b)!== -1){
abc ="hai"
}
else if ((c && d)!== -1) {
abc="hello"
}
else{
abc="Hurray"
}语句2:
if(a==="abc"){
if(bb==="def"){
amd ="hello"
}
else if(bb==="ghi"){
amd ="hai"
}
else{
amd = "Hurray";
}
}
else if(a==="qwe"){
if(aaa==="ddd") {
amd = "Hurray Hi";
}
else{
amd = "Hurray bye";
}
}发布于 2014-06-17 21:30:06
语句:1可以写成,
abc = (a !== -1 && b!== -1) ? "hai" : (c !== -1 && d!== -1) ? "hello" : "hurray";因此,在此基础上,尝试为语句2编写自己的代码[提示:使用switch ]
发布于 2014-06-17 22:35:26
简写形式称为三进制逻辑。它很简单,但是如果你有需要大量更新的条件,它可能会变得混乱。但事实是:
Statement 1:
var a = -1;
var b = -1;
var c = -1;
var d = -1;
result = ((a && b) !== -1) ? 'hai' :
((c && d) !== -1) ? 'hello' : 'hurray';
alert(result);Statement 2:
var a = 'abc';
var bb = 'def';
// plug in the remaining variables to test further
result = (a === 'abc') ? (bb === 'def') ? amd = 'hello' :
(bb === 'ghi') ? amd = 'hai' : amd = 'Hurray' :
(a === 'que') ? (aaa === 'ddd') ? amd = 'Hurray Hi' : amd = 'Hurray Bye' :
'default result was missing from your statment';
alert(result);这应该就行了。虽然它是“速记”,但从长远来看,它可能会更令人困惑。
https://stackoverflow.com/questions/24265123
复制相似问题