JavaScript-Recursion的運用

    Coding

    JavaScript處理遞迴事件「Recursion」:
    在解決問題的過程中,我們可以思考變數的運算關係,
    而遞迴的概念是在函式中再次呼叫函式自己,進而達到重複執行函式的計算。

    ex. 下方試著將「n!階乘:n * (n – 1)」的過程透過遞迴函式來呈現,
    需注意數值得退場機制,否則將有可能導致「無窮迴圈」。

    function factorial(n) {
      if (n === 1) return 1;
      return n * factorial(n - 1);
    }
    
    console.log(factorial(3)); //6 
    
    flow chart:
    3 * (3 - 1)
    3 *    2    * (2 - 1)
    3 *    2    *    1
    //6
    

    參考資料來源:JavaScript mdn