Nesting for loops: Not returning correct output

Tell us what’s happening:
I’ve watched the help video, read forums on how the nested for loop works, how it’s supposed to look like but when I enter the code, one I tried and then one I got from the hint I get that the product should = 0, 5040 and 54:

// running tests

multiplyAll([[1],[2],[3]])

should return

6
multiplyAll([[1,2],[3,4],[5,6,7]])

should return

5040
multiplyAll([[5,1],[0.2, 4, 0.5],[3, 9]])

should return

54

// tests completed

Your code so far


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 = product*[i][j];
}
}
// Only change code above this line
return product;
}

multiplyAll([[1,2],[3,4],[5,6,7]]);

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36.

Challenge: Nesting For Loops

Link to the challenge:

Hi and welcome to the forum!

What are you indexing here? The syntax here is your problem.

1 Like

Thank you for replying! and great tag thing (DM) love D&D.

I think I’m calling product and multiplying it by the indexes represented by i and j from multiplyAll(arr).

I’m new to the language and terms so I’m not sure if I’m answering your question correctly or how to find the correct syntax.

if you add console.log([i][j]), do you see what you expect?

you need to multiply by an element in arr

2 Likes

Omg, I’m so dumb. I forgot to put the arr before i j

1 Like

I just cleared the problem as you were replying lol feels so dumb after I realized my mistake.

Good work figuring it out! We’ve all made little mistakes like that before.