Question mark and colon in JavaScript

前端 未结 7 1520
孤独总比滥情好
孤独总比滥情好 2020-11-21 11:36

I came across the following line

hsb.s = max != 0 ? 255 * delta / max : 0;

What do the ? and : mean in this conte

7条回答
  •  攒了一身酷
    2020-11-21 12:06

    It is called the Conditional Operator (which is a ternary operator).

    It has the form of: condition ? value-if-true : value-if-false
    Think of the ? as "then" and : as "else".

    Your code is equivalent to

    if (max != 0)
      hsb.s = 255 * delta / max;
    else
      hsb.s = 0;
    

提交回复
热议问题