How to understand this script?

  • 0
    I started learning recursion, can you tell me how it works?
    I understand the first three steps, but I can't understand further.
    1.n = 5
    2.n! == 5
    3.return myFun (n - 1) + '' + n; // Output: 4 5. If the initial output is 4 5, how do the rest of the numbers get to 4 5?
    4. Further I don’t understand, the variable n doesn’t change, it seems like how other numbers are obtained then?
    function myFun(n) {
      if (n === 1) return 1;
    
      return myFun(n - 1) + ' ' + n;
    }
    
    myFun(5);
    
    // 1 2 3 4 5
    JavaScript Anonymous, Jul 28, 2020

  • 1 Answers
  • 0
    Take a walk for a start.



    Recursion will start returning a result when it reaches the very end and results will start returning from the very end. Hence, it turns out that 5 was sent, but the output started from 1, because return did not work before, it called the myFun function, and the result began to return when this if if (n == = 1) return 1; , in which myFun is no longer called and, accordingly, the recursion ends and return begins to return a response.
    Evangeline Bruce

Your Answer
To place the code, please use CodePen or similar tool. Thanks you!