1

I just started to learn JavaScript, and callback functions seem hard to understand. One question I have is how javascript matches the parameters in a callback function? for example in the following forEach loop:

    var friends = ['Mike', 'Stacy', 'Andy', 'Rick'];    
    friends.forEach(function(eachName, index){
          console.log(index + 1 + ". " + eachName);
        });

Is it by default that the forEach function will pass index to the second parameter and entry to the first parameter in the callback function?

In order to master callback functions, do I need to check the API (in this case, forEach) every time I use it?

1

2 Answers 2

2

Is it by default that the forEach function will pass index to the second parameter and entry to the first parameter in the callback function?

Yes; this is part of the specification. In fact, it also passes the array being iterated as the third argument.

Call the [[Call]] internal method of callbackfn with T as the this value and argument list containing [the value], [the index], and [the object].

(Emphasis mine.)

In order to master callback functions, do I need to check the API (in this case, forEach) every time I use it?

Well, they’re pretty consistent with each other, so you’ll remember at some point. map, filter, every, and some also work in this way.

Sign up to request clarification or add additional context in comments.

Comments

1

Ya it's by default.To start using a function better if you refer some API.

I have used MDN for that.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.