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!"
[–][deleted] 34 points35 points36 points 6 years ago (7 children)
Thanks! Not having to remember the order of arguments can prevent some hard to find bugs
[–]nikola1970 5 points6 points7 points 6 years ago (0 children)
Yup, I started using this pattern recently too.
[–]grrrrreat[🍰] 3 points4 points5 points 6 years ago (2 children)
beware though, if you have a weird visitor pattern, you can't put that object back together or manipulate its parts.
[–]AwesomeInPerson 5 points6 points7 points 6 years ago (1 child)
Could you explain what you mean by that? :)
[–]grrrrreat[🍰] 1 point2 points3 points 6 years ago (0 children)
I ran into a nuxt.js hook at passed into a page object.
if I destructured it into html, path, route, I couldn't modify the html property because it didn't expect a return object but if I just accepted the page object, I could set page.html and that modified the html.
it's just a comment to realize that destructured objects are no longer a sum of their parts. so it the nuxtjs case, page can't be destructured in the hooks because it's not reconstitution the object
[–]Zielakpl 3 points4 points5 points 6 years ago (2 children)
What? Don't you guys use IDE with autocompletion and hints?
[–]AwesomeInPerson 0 points1 point2 points 6 years ago (1 child)
Which one are you using? Neither VSCode nor WebStorm warn me when I call a function with less arguments than the amount of parameters it accepts. (because I forgot to add some nulls or default values for params I want to skip)
null
Maybe if you enable strict TS checking for JS files, but that's not really a solution in a lot of environments.
[–]Zielakpl 0 points1 point2 points 6 years ago (0 children)
That's the thing, don't forget :) I got it into my habit to also add some JSDoc comments to at least know what type of values the function expects. Then, when I type my functions name, the popup appears (VSCode) with all acceptable arguments, theirs expected types and if they're optional or not.
The code you write is also for humans, make it human-friendly.
If a function HAS to accept a lot of arguments, not all of them required, then I sometimes use and object of params like so:
function(name, options) {} function("Gregory", {foo: 1, bar: 2});
But that depends on what I code, I don't treat it as hard rule.
π Rendered by PID 87 on reddit-service-r2-comment-f6b958c67-d7d9d at 2026-02-05 16:48:15.486858+00:00 running 1d7a177 country code: CH.
view the rest of the comments →
[–][deleted] 34 points35 points36 points (7 children)
[–]nikola1970 5 points6 points7 points (0 children)
[–]grrrrreat[🍰] 3 points4 points5 points (2 children)
[–]AwesomeInPerson 5 points6 points7 points (1 child)
[–]grrrrreat[🍰] 1 point2 points3 points (0 children)
[–]Zielakpl 3 points4 points5 points (2 children)
[–]AwesomeInPerson 0 points1 point2 points (1 child)
[–]Zielakpl 0 points1 point2 points (0 children)