this post was submitted on 17 May 2025
73 points (94.0% liked)

Programmer Humor

35972 readers
153 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 
all 15 comments
sorted by: hot top controversial new old
[–] [email protected] 30 points 2 weeks ago (1 children)

Definitionally in IEEE floating point, NaN is not equal to anything, including itself. The only real abomination here is B:

> Math.min()
Infinity
> Math.max()
-Infinity
> 
[–] [email protected] 21 points 2 weeks ago (2 children)

I mean, B does make some amount of sense, if you realize that it's supposed to give you the maximum among the parameters (so you'd normally call it as Math.max(5, 3) === 5).

Well, and you can call that with zero parameters, because you can spread an array into it, which might have zero length. And then given these conditions, and if you don't want to throw an error, then -Infinity is kind of the least bad remaining option, as it's likely to generally work with the rest of your logic.

[–] [email protected] 5 points 2 weeks ago

I love javascript. It's so insane in such fun ways to prevent itself from throwing errors. It's got like a naive cute charm to it ya know?

[–] [email protected] 4 points 2 weeks ago

thats how we often do it in math. The minimum over the empty set is ∞

[–] [email protected] 6 points 2 weeks ago (2 children)
[–] [email protected] 2 points 2 weeks ago
[–] [email protected] 4 points 2 weeks ago

@yogthos i afraid of (0 == '') :blob_grinning_sweat:

[–] [email protected] 4 points 2 weeks ago (1 children)

It can't be anything other than B, right?

[–] [email protected] 7 points 2 weeks ago
[–] [email protected] 3 points 2 weeks ago

Moot! Those ALL fail code review!

[–] [email protected] 3 points 2 weeks ago

A && B && C && D

[–] [email protected] 1 points 2 weeks ago* (last edited 2 weeks ago) (1 children)

is D and two single quotes, or one double quote?

[–] [email protected] 3 points 2 weeks ago (1 children)

I'm guessing single quotes, since a single double quote isn't valid syntax.

[–] [email protected] 3 points 2 weeks ago

Yeah, not even JavaScript is that insane!