const max = (a, b, c) => ([a, b, c].sort().pop());
if i'm writing something SOOO performance critical that i can't afford the extra One comparison that comes with a sort i'd write it as
function max(a, b, c) {
if (a > b) {
return Math.max(a, c);
}
return Math.max(b, c);
}
because at that point you're doing too many things for it to make sense as a one-liner
this is all assuming Math.max
can't take a third argument, or an array argument or something. which seems to be the assumption made in the premise
@monorail oh my fucking god Math.max can take a third argument in JavaScript fuck me
@wallhackio well there you have it
@monorail when i do things like this aesc calls them "caleb solutions"
@wallhackio @monorail I like Clodsire's solution better, for what it's worth
What the Glaceon wrote just feels so wrong
IDK, I'm not a JavaScript programmer, it's probably an OK solution in terms of performance
It just feels so wrong instead of the obvious solution of using 2 ternary operators...
@vaporeon_ @wallhackio the problem with nested ternery operators is that every time you write code, you're setting yourself up to have to read it later
@monorail @vaporeon_ i bet that I am Powerful enough to understand nested ternaries I wrote a year ago
@wallhackio @vaporeon_ i am capable of understanding all kinds of code
i think good code should be trivial to read
@monorail @vaporeon_ I actually agree with you, I am just being difficult because I am stupid enough to pester a 50m tall creature
@aescling @wallhackio @vaporeon_ sometimes
@wallhackio @monorail @vaporeon_ 50m and growing, apparently