视情况返回以下两个表达式之一。
test ? expression1 : expression2
- test
任何 Boolean 表达式。
- expression1
test 为 true 时返回的表达式。可能是逗点表达式。
- expression2
test 为 false 时返回的表达式。可能是逗点表达式。
?: 运算符可以用作 if...else 语句的快捷方式。它通常用作较大表达式(使用 if...else 语句会很繁琐)的一部分。例如:
var now = new Date(); var greeting = "Good" + ((now.getHours() > 17) ? " evening." : " day.");
在此例中,如果晚于下午 6 时,则创建一个包含 "Good evening." 的字符串。使用 if...else 语句的等效代码如下:
var now = new Date(); var greeting = "Good"; if (now.getHours() > 17) greeting += " evening."; else greeting += " day.";要求请参见
参考
if...else 语句概念
运算符优先级运算符摘要