Share via


條件 (三元) 運算子 (?:)

根據條件傳回兩個運算式的其中一個。

test ? expression1 : expression2

引數

  • Test - 測試
    任何 Boolean 運算式。

  • expression1
    testtrue 時,所傳回的運算式。 可為逗號運算子。

  • expression2
    testfalse 時,所傳回的運算式。 可為逗號運算子。

備註

?: 運算子可當做 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.";

需求

1 版

請參閱

參考

if...else 陳述式

概念

運算子優先順序

運算子摘要