me personally, i prefer switch case statements for many-value selection, but if ternary works for you, go ham (as long as you don’t happen to be the guy who’s code I keep having to scrub lol)
Switch is good if you only need to compare equals when selecting a value.
Although some languages make it way more powerful, like python match.
but I generally dislike python despite of this, and I generally dislike switch because the syntax and formatting is just too unlike the rest of the languages.
Generally I prefer the clear brevity of:
var foo=
x>100 ? bar :
x>50 ? baz :
x>10 ? qux :
quux;
Which doesn’t really get any better if you remove the optional (but recommended) braces.
Heck, I even prefer ternary over some variations of switch for equals conditionals, like the one in Java:
But some languages do switch better than others (like python as previously mentioned), so there are certainly cases where that’d probably be preferable even to me.
If there’s more than two branches in the decision tree I’ll default to a if/else or switch/case except if I want to initialise a const to a conditional value, which is one of the places I praise the lord for ternaries.
me personally, i prefer switch case statements for many-value selection, but if ternary works for you, go ham (as long as you don’t happen to be the guy who’s code I keep having to scrub lol)
Switch is good if you only need to compare equals when selecting a value.
Although some languages make it way more powerful, like python
match
.but I generally dislike python despite of this, and I generally dislike
switch
because the syntax and formatting is just too unlike the rest of the languages.Generally I prefer the clear brevity of:
var foo= x>100 ? bar : x>50 ? baz : x>10 ? qux : quux;
Over
var foo; if(x>100) { foo=bar; } else if(x>50) { foo=baz; } else if(x>10) { foo=qux; } else { foo=quux; }
Which doesn’t really get any better if you remove the optional (but recommended) braces.
Heck, I even prefer ternary over some variations of
switch
for equals conditionals, like the one in Java:var foo; switch(x) { case 100: foo=bar; break; case 50: foo=baz; break; case 10: foo=qux; break; default: foo=quux; }
But some languages do
switch
better than others (like python as previously mentioned), so there are certainly cases where that’d probably be preferable even to me.If there’s more than two branches in the decision tree I’ll default to a if/else or switch/case except if I want to initialise a
const
to a conditional value, which is one of the places I praise the lord for ternaries.