How do you use the ? : (conditional) operator in JavaScript?

前端 未结 18 1642
感动是毒
感动是毒 2020-11-21 05:48

In simple words, what is the ?: (conditional, "ternary") operator and how can I use it?

18条回答
  •  花落未央
    2020-11-21 06:19

    It's called the 'ternary' or 'conditional' operator.

    Example

    The ?: operator can be used as a shortcut for an if...else statement. It is typically used as part of a larger expression where an if...else statement would be awkward. For example:

    var now = new Date();
    var greeting = "Good" + ((now.getHours() > 17) ? " evening." : " day.");
    

    The example creates a string containing "Good evening." if it is after 6pm. The equivalent code using an if...else statement would look as follows:

    var now = new Date();
    var greeting = "Good";
    if (now.getHours() > 17)
       greeting += " evening.";
    else
       greeting += " day.";
    

    From MSDN JS documentation.

    Basically it's a shorthand conditional statement.

    Also see:

    • Operator precedence with Javascript Ternary operator
    • Wikipedia

提交回复
热议问题