Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Understanding for loops

Open
#23 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
35/100
Issue type
Documentation
Clarity
Needs clarification
Activity status
Stale
Tech stack
javascript
Domain
documentation

Research direction

No repository file or test is named in the issue. Start with the supplied multiplyAll example and review the surrounding JavaScript learning material; done means the material clearly answers what i and j represent, why the loops increment them, and how the nested arrays are traversed.

Written by the indexing model from the issue text.

Description

question

@sophielevens asked me this question about understanding for loops. The question is from Free Code Camp.

Question
If you have a multi-dimensional array, you can use the same logic as the prior waypoint to loop through both the array and any sub-arrays. Here is an example:

var arr = [
  [1,2], [3,4], [5,6]
];
for (var i=0; i < arr.length; i++) {
  for (var j=0; j < arr[i].length; j++) {
    console.log(arr[i][j]);
  }
}

This outputs each sub-element in arr one at a time. Note that for the inner loop, we are checking the .length of arr[i], since arr[i] is itself an array.
Instructions
Modify function multiplyAll so that it multiplies the product variable by each number in the sub-arrays of arrand the answer is this

function multiplyAll(arr) {
var product = 1;
// Only change code below this line
for (var i=0; i < arr.length; i++) {
for (var j=0; j < arr[i].length; j++) {
product *= arr[i][j];
}
}
// Only change code above this line
return product;
}
// Modify values below to test your code
multiplyAll([[1,2],[3,4],[5,6,7]]);

Her questions were:

  1. Where on earth did [i] and [j] come from? Have googled it and can't find out what they mean
  2. Also, (i++) is apparently the same as (i = i + 1) why do we want to add 1 to i?
Dominant language
HTML
Stars
65
Forks
15
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from dwyl/learn-javascript

All issues in dwyl/learn-javascript

Similar issues

More Documentation issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.