JS遞迴理解案例

2021-10-06 19:34:24 字數 988 閱讀 2669

遞迴:函式內部自己呼叫自己,這個函式就是遞迴函式,但是遞迴裡面必須加退出條件

先看乙個小例子

var num = 1;

function fn()

num++;

fn()

} fn()

結果是'我要暴富'列印6次,因為第6次return

再來實現乙個小demo,利用遞迴函式求1~n的階乘 123*4 …n

function fn(n)

return n * fn(n -1)

} console.log(fn(3))

結果為6,怎麼得到的呢?

使用者輸入的是3

return 3 * fn(2)

return 3 * (2 * fn(1))

return 3 * (2 * 1)

再來乙個小demo,利用遞迴篩選遍歷資料

我們想要做輸入id號,就可以返回的資料物件

var data = [

]},]}, ]

//1.利用foreach去遍歷裡面的每乙個物件

var o = {}

// 報錯就把{}換成null

JS遞迴函式案例

var num 1 function fn num fn 在函式內部呼叫了自身 fn 案例1 利用遞迴函式求1 2 3 4 nfunction fn n return n fn n 1 console.log fn 3 輸出6 案例2 求斐波那契數列fibonacci中的第n個數是多少?1 1 2 ...

理解js遞迴演算法

遞迴演算法是一種看似簡單,但邏輯性比較複雜的演算法。一般我們看的遞迴 很複雜的問題3 4行就可以解決的,但是背後的邏輯還是很複雜的。遞迴的特點總結 1 自呼叫,就是在函式裡面呼叫自己 2 最關鍵的一點,就是乙個遞迴必須明確結束條件,不然就會陷入無窮的死迴圈 3 缺點,就是消耗大量記憶體 下面我們總結...

案例 遞迴呼叫

1 什麼是遞迴 實現某些功能不用遞迴可能要幾十行 用遞迴可能幾行就搞定了,而且 清晰簡潔。一直以為遞迴也就是自己呼叫自己,有乙個出口條件,讓他停止遞迴,退出函式,其實的特點並非就這些。遞迴還有乙個非常重要的特點 先進後出,跟棧類似,先遞進去的後遞出來。由於遞迴一直在自己呼叫自己,有時候我們很難清楚的...