JavaScript三元运算符可以支持3个条件吗?

AnA*_*ice 1 javascript ternary-operator ternary switch-statement

给定以下JavaScript三元运算符,是否可以启用它来支持3个条件而不是当前的两个条件?

const color = d.y >= 70 ? "green" : "red";
Run Code Online (Sandbox Code Playgroud)

我基本上喜欢以下逻辑:

>= 70, color = green;
between 69-50, color = yellow;
< 50, color = red;
Run Code Online (Sandbox Code Playgroud)

这可能是1行三元组还是需要IF语句?

谢谢

mar*_*308 12

你可以做

const color = d.y >= 70 ? "green" : (d.y < 50 ? "red" : "yellow");
Run Code Online (Sandbox Code Playgroud)


Zdr*_*nev 8

你可以像这样堆叠它:

condition1 
  ? result1 
  : condition2 ? result3 : result4
Run Code Online (Sandbox Code Playgroud)


Pet*_*der 6

只需要第二个三元运算符:

const color = d.y >= 70 ? "green" : d.y >= 50 ? "yellow" : "red";
Run Code Online (Sandbox Code Playgroud)