遇到奇怪的javascript操作

Came across weird javascript operation

本文关键字:javascript 操作 遇到      更新时间:2024-04-04

我正在做一个别人设计的项目。我遇到了下面的手术。我不知道它在做什么。它似乎正在返回1。

有人想详细说明吗?非常感谢。

   ( 7  > 8?2:1)

您看到的是三元运算符。

它由CCD_ 1组成。如果(condition)为true,则整个表达式将计算为(expression1),如果(condition)为false,则计算为(expression2)

var i = (7 > 8 ? 2 : 1);

转化为

if (7 > 8)
{
  i = 2;
}
else
{
  i = 1;
}

请参阅:http://en.wikipedia.org/wiki/%3F:

如果7>8,您的示例将返回2,否则返回1。

? :是一个三元运算符。这相当于

var x = 0;
if (7 > 8){
  x = 2;
} else {
  x = 1;
}

这是一种表达简单条件语句的简洁方式。这是一种很好的方法,可以有条件地为变量赋值,而不需要上面使用的详细语义。