什么是?:(问号和冒号运算符。条件或“三元”)操作符,我如何使用它?


当前回答

嘿,伙计,记住js是通过求值为真或假来工作的,对吧?

让我们用一个三元运算符:

questionAnswered ? "Awesome!" : "damn" ;

首先,js检查questionAnswered是真还是假。

如果为真(?)你会得到“太棒了!”

否则(:)你会得到“damn”;

希望这对朋友有帮助:)

其他回答

当你拥有的都是符号时,想要谷歌有点困难;)使用的术语是“JavaScript条件运算符”。

如果您在JavaScript中看到更多有趣的符号,您应该首先尝试查找JavaScript的操作符:Mozilla Developer Center的操作符列表。您可能遇到的一个例外是$符号。

为了回答您的问题,条件操作符替换了简单的if语句。最好举个例子:

var insurancePremium = age > 21 ? 100 : 200;

而不是:

var insurancePremium;

if (age > 21) {
    insurancePremium = 100;
} else {
    insurancePremium = 200;
}

三元运算符

Javascript中通常有条件语句。

例子:

if (true) {
    console.log(1)
} 
else {
    console.log(0)
}
# Answer
# 1

但它包含两行或多行,不能赋值给变量。 Javascript有一个解决这个问题的三元运算符。 三元操作符可以写在一行中并赋值给一个变量。

例子:

var operator = true ? 1 : 0
console.log(operator)
# Answer
# 1

这个三元运算符类似于C编程语言。

这是一行中的if语句。

So

var x=1;
(x == 1) ? y="true" : y="false";
alert(y);

要计算的表达式在()中。

如果匹配为true,则执行?

如果匹配为false,执行下面的代码:

利用三元运算符,编写程序打印偶数,如果数字是偶数,打印奇数,如果数字是奇数。

设a = 13; 令b = a%2!= = 0 ?“是奇数”:“是偶数”; // let b = a%2==0 ?“是偶数”:“是奇数”; console.log (a + " " +);

输出:13为奇数

条件(三元)操作符是唯一的JavaScript操作符 这需要三个操作数。这个运算符经常被用作 if语句的快捷方式。

condition ? expr1 : expr2 

如果condition为真,运算符返回expr1的值; 否则,它返回expr2的值。

function fact(n) {
  if (n > 1) {
    return n * fact(n-1);
  } else {
    return 1;
  }
  // we can replace the above code in a single line of code as below
  //return (n != 1) ? n * fact(n - 1) : 1;
}
console.log(fact(5));

如需更多说明,请阅读MDN文档链接