条件运算符
条件运算符(Conditional Operator)是 JavaScript 中唯一的一个三元运算符(三个操作数),有时直接称做三元运算符。
variable = boolean_expression ? true_value : false_value;
本质上,这就是基于对 boolean_expression 求值的结果,决定给变量 variable 赋什么值。如果求值结果是 true ,则给变量 variable 赋值true_value;如果求值结果是 false,则给变量 variable 赋值false_value。
条件运算符的操作数可以是任意类型,第一个操作数当成布尔值,如果它是真值 true,那么将计算第二个操作数,并返回其计算结果。否则,如果第一个操作数是假值 false,那么将计算第三个操作数,并返回其计算结果。第二个和第三个操作数总是会计算其中之一,不可能两者同时执行。
其实使用 if 语句也会带来同样的效果,?:运算符只是提供了一种简写形式。下面是一个 ?: 的典型应用场景,判断一个变量是否有定义(并拥有一个有意义的真值),如果有定义则使用它,如果无定义则使用一个默认值:
greeting &