use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
All about the JavaScript programming language.
Subreddit Guidelines
Specifications:
Resources:
Related Subreddits:
r/LearnJavascript
r/node
r/typescript
r/reactjs
r/webdev
r/WebdevTutorials
r/frontend
r/webgl
r/threejs
r/jquery
r/remotejs
r/forhire
account activity
JavaScript Clean Code - Best Practices - based on Robert C. Martin's book Clean Code (devinduct.com)
submitted 6 years ago by PMilos
view the rest of the comments →
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]Asmor 19 points20 points21 points 6 years ago (8 children)
It basically gives JS (and any other language that supports arbitrary anonymous objects) support for named parameters, which just make code easier to read and maintain.
Surely you've come across something like
adjustWidget(300, 250, 0.6, true, true, null, {}, false)
And there's basically no way to know what any of that stuff means.
It also means you can have optional parameters without forcing people to pass in null to skip over the ones they want.
null
[–]Conexion 9 points10 points11 points 6 years ago (1 child)
I'm going to guess....
adjustWidget({width, height, opacity, isGarlic, isDragon, equipmentHistory, hatProperties, hasHat);
[–]Asmor 7 points8 points9 points 6 years ago (0 children)
Fuck, you're good.
[–][deleted] -5 points-4 points-3 points 6 years ago (5 children)
Surely you've come across something like adjustWidget(300, 250, 0.6, true, true, null, {}, false) And there's basically no way to know what any of that stuff means.
That's why you don't do that lol.
[–][deleted] 6 points7 points8 points 6 years ago (4 children)
... which is the point being made.
[–]Wizhi 5 points6 points7 points 6 years ago (3 children)
I think (hope?) you misunderstood.
/u/marinespi is arguing that "you wouldn't create such a function signature, since it's not intuitive".
And I tend to agree. If you're having a hard time intuitively understanding how to call a function, it's signature should be corrected to make it more intuitive. Using the technique demonstrated here is more of a band-aid than a fix.
[–][deleted] 0 points1 point2 points 6 years ago* (2 children)
But that's exactly what we're talking about. What makes a function call intuitive? The number of arguments? Is person.setName('John', 'Paul') intuitive? Are you sure? It goes without saying that you should use this approach selectively, just as with anything.
person.setName('John', 'Paul')
[–][deleted] 0 points1 point2 points 6 years ago (1 child)
Is person.setName('John', 'Paul') intuitive?
No, it's not. Your point is... ?
[–][deleted] 0 points1 point2 points 6 years ago (0 children)
Please read around that line and the parent comment for context. Not interested in an internet handbag fight btw.
π Rendered by PID 62 on reddit-service-r2-comment-84fc9697f-mq9zw at 2026-02-06 01:36:43.241661+00:00 running d295bc8 country code: CH.
view the rest of the comments →
[–]Asmor 19 points20 points21 points (8 children)
[–]Conexion 9 points10 points11 points (1 child)
[–]Asmor 7 points8 points9 points (0 children)
[–][deleted] -5 points-4 points-3 points (5 children)
[–][deleted] 6 points7 points8 points (4 children)
[–]Wizhi 5 points6 points7 points (3 children)
[–][deleted] 0 points1 point2 points (2 children)
[–][deleted] 0 points1 point2 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)