I love the two lonely downvotes on this.
Programmer Humor
Welcome to Programmer Humor!
This is a place where you can post jokes, memes, humor, etc. related to programming!
For sharing awful code theres also Programming Horror.
Rules
- Keep content in english
- No advertisements
- Posts must be related to programming or programmer topics
Merging the upvotes and downvotes is the best option
nah, it's more fun this way.
I'm no expert and I know that javascript is full of wtf moments, but please.. Let it be B
It's not gong to be B, it's it.
Narrator: "It wasn't B."
It is true. Math.min() returns positive Infinity when called with no arguments and Math.max() returns Negative Infinity when called with no arguments. Positive Infinity > Negative Infinity.
Math.min() works something like this
def min(numbers):
r = Infinity
for n in numbers:
if n < r:
r = n
return r
I'm guessing there's a reason they wanted min() to be able to be called without any arguments but I'm sure it isn't a good one.
I’m guessing there’s a reason they wanted min() to be able to be called without any arguments but I’m sure it isn’t a good one.
It not a totally unreasonable definition. For example it preserves nice properties like min(a.concat(b)) == min([min(a), min(b)])
.
Obviously the correct thing to do is to return an optional type, like Rust does. But ... yeah I mean considering the other footguns in Javascript (e.g. the insane implicit type coersion) I'd say they didn't do too badly here.
It's C
Wtf? Min > Max???
Math.min isn’t the minimum integer; it’s the minimum of a list (and max visa versa)… the min/max of an undefined list is the same… IDK what it is, but this probably the most reasonable of the “WTFs” they could have put there i think… other languages would throw an exception or not compile (which JS definitely SHOULD do instead of this, buuuuut lots of JS has aversions to errors)
*edit: okay the curiosity was killing me: Math.min() is Infinity and Math.max() is -Infinity
That explains it then. It could be mislead for -inf and +inf
No, it's Javascript, keep up
Javascript is basically just C with some syntactical sugar, right? RIGHT?!?
To the contrary, it's Lisp with a lot of syntactic sugar to make it look more like C, but underneath it's nothing like C. It's a weird hybrid.
I would say that your username doesn't check out, but being honest we're all coders, or at least script kiddie pirates, around here.