我参加了考试并看到了类似的问题;
var b = (1==2) ? (1==1) ? (2==1) ? "A" : "B" : "C" : "D";
什么是b以及它如何运作这样的条件?
感谢。
答案 0 :(得分:2)
A ternary operator这样做:
声明
variable = condition ? value1 : value2
相当于
if (condition)
{
variable = value1;
}
else
{
variable = value2;
}
所以在你的情况下,
var b = (1==2) ? (1==1) ? (2==1) ? "A" : "B" : "C" : "D";
只是一些嵌套的三元运算符,与
相同 var b;
if (1==2)
{
if (1==1)
{
if (2==1)
{
b = "A";
}
else
{
b = "B";
}
}
else
{
b = "C";
}
}
else
{
b = "D";
}