this post was submitted on 17 May 2025
492 points (97.9% liked)

Programmer Humor

23365 readers
1086 users here now

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

founded 2 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 16 points 3 days ago (2 children)
[–] [email protected] 8 points 3 days ago (2 children)

I'd say C too because that's the only one that would be True in a normal programming language and this is javascript so...

[–] [email protected] 4 points 3 days ago (1 children)

probably not true in most other langauges. although I'm not well versed in the way numbers are represented in code and what makes a number "NaN", something tells me the technical implications of that would be quite bad in a production environment.

the definitive way to check for NaN in JS would probably be something like

// with `num` being an unknown value

// Convert value to a number
const res = Number(num);

/*
 * First check if the number is 0, since 0 is a falsy
 * value in JS, and if it isn't, `NaN` is the only other
 * falsy number value
 */
const isNaN = res !== 0 && !res;
[–] Remavas 2 points 9 hours ago

NaN is a special floating point value. https://en.wikipedia.org/wiki/IEEE_754

It's weird but it makes sense why it was chosen to be this way.

[–] Remavas 4 points 3 days ago (1 children)

It's not true in a normal programming language. If it is true in yours, you should stop using it immediately.

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

A non type should be a type. It should be of the type none. And it is in good script languages like Python so I don't know why you think it shouldn't.

[–] Remavas 1 points 9 hours ago

They say a picture is worth a thousand words.

[–] [email protected] 1 points 3 days ago

Can't be C, C is the true path.