this post was submitted on 31 Oct 2024
381 points (98.5% liked)

196

16774 readers
3960 users here now

Be sure to follow the rule before you head out.

Rule: You must post before you leave.

^other^ ^rules^

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

oh of course there is

https://www.npmjs.com/package/is-even

(do take a look at the download stats)

[–] [email protected] 13 points 2 months ago* (last edited 2 months ago)

And that isn’t even the worst thing about it…

The implementation looks like this:

function isEven(i) {
  return !isOdd(i);
};

And yes, is-odd is a dependency that in turn depends on is-number

[–] [email protected] 7 points 2 months ago* (last edited 2 months ago) (4 children)

Can't you just

If (number % 2 == 0){return true}

[–] [email protected] 11 points 2 months ago (1 children)
[–] [email protected] 1 points 2 months ago

Yeah, that's even simpler

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

but what if number isn’t an integer, or even a number at all? This code, and the improved code shared by the other user, could cause major problems under those conditions. Really, what you would want, is to validate that number is actually an integer before performing the modulo, and if it isn’t, you want to throw an exception, because something has gone wrong.

That’s exactly what that NPM module does. And this is why it’s not a bad thing to use packages/modules for even very simple tasks, because they help to prevent us from making silly mistakes.

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

That would already cause an exception when calling the function because it has int number in the parameters

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

Javascript doesn’t have strongly-typed variables

[–] [email protected] 1 points 1 month ago

ah the joys of loosely typed languages

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

yup, which is why I find the download stats truly horrifying

[–] [email protected] 6 points 2 months ago* (last edited 2 months ago)

"If it's not an npm package it's impossible"

- JS devs, probably

[–] tb_ 5 points 2 months ago

That's a lot of downloads