Basic JavaScript - Replace Loops using Recursion

Tell us what’s happening:

I was able to solve it after some tries but… I still don’t understand how I got it.
Mainly this line of code:

return sum(arr, n - 1) + arr[n - 1];

What am i doing here? What is the code doing?
And wth is Recursion…

Your code so far

function sum(arr, n) {
    // Only change code below this line
    if (n <= 0){
      return 0;
    } else {
      return sum(arr, n - 1) + arr[n - 1];
    }
  // Only change code above this line
}

Your browser information:

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

Challenge: Basic JavaScript - Replace Loops using Recursion

Link to the challenge:

Haha yeah, recursion was a tough one. Basically, you’re throwing pending calculations into the call stack memory until N reaches zero, then it solves all the call stacks in reverse order. The best way I heard it explained is like lining up dominos. You stand them up one after another until the last one, and when you knock the last one over, it knocks them all down until it gets to the first

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.