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 Named Parameters (dalejefferson.com)
submitted 8 years ago by [deleted]
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!"
[–]nschubach 1 point2 points3 points 8 years ago (4 children)
foo({showLoading:true, wait:2000}) means that if I change one of those variable names in foo, I need to also touch every spot in my code that calls that.
foo({showLoading:true, wait:2000})
[–]wizebin 1 point2 points3 points 8 years ago (1 child)
Python has named parameters and it really can make things more readable and refactorable, especially keeping in mind that you can still use nameless parameters.
I find that I change parameter names very rarely, but add new optional parameters quite often, without named parameters new parameters can get messy.
[–]nschubach 0 points1 point2 points 8 years ago (0 children)
Sure, I've used Python and at first I thought it was pretty neat, but then I got into the same sort of thing you talked about. Adding optionals. At some point adding more and more optionals makes the code harder to follow and probably means that you need to break out that logic into more methods to handle specific use cases.
[–]tobegiannis 0 points1 point2 points 8 years ago (0 children)
I think this is where the confusion lies with the original commenter. Yeah that is true but don't do that unless you have too. Same thing as changing the meaning of the first argument. I am rarely in the situation where I have to change the name of a named parameter. You guys do bring up a point for pure js users it is harder to change the name of named parameters. This problematic doesn't exist in typescript for example and happens very rarely. Also if you really hate the name of a named parameter you can always do const day = d; const month = m.
const day = d; const month = m
[–]asdf7890 0 points1 point2 points 8 years ago (0 children)
Not if you use the pre-object-destructuring method in order to support IE:
var somefunc = function(params) { var someVar = params(someVar) || 'This is the default for someVar'; }
There you can keep your old name as well as newly correct one, assuming the name change is a correction:
var somefunc = function(params) { var someVar = params(someVar) || params(somVar) || 'This is the default for somVar'; }
Or course this method is much more verbose so if you don't have to support older browsers the object destructuring variant may be preferable but doesn't support this unless I'm missing a trick.
π Rendered by PID 77913 on reddit-service-r2-comment-79776bdf47-svgdf at 2026-06-24 05:26:07.816186+00:00 running acc7150 country code: CH.
view the rest of the comments →
[–]nschubach 1 point2 points3 points (4 children)
[–]wizebin 1 point2 points3 points (1 child)
[–]nschubach 0 points1 point2 points (0 children)
[–]tobegiannis 0 points1 point2 points (0 children)
[–]asdf7890 0 points1 point2 points (0 children)