函式內部呼叫自己,就是遞迴函式
注意:一定要加退出條件,不然就會死迴圈
例一:利用遞迴求1~n的階乘1 * 2 * 3 * 4 * …n
此**如果拆開解析就是,可以看到fn()
函式多次自己呼叫自己,直到條件滿足
例二:利用遞迴函式查詢對應商品function
fn(n)
return n *
fn(n -1)
;}console.
log(fn(
5))// 此遞迴函式進行的過程如下
return5*
fn(5-
1)return5*
fn(4)
return5*
(4*fn
(4-1
))return5*
(4*fn
(3))
return5*
(4*(
3*fn(
3-1)
))return5*
(4*(
3*fn(
2)))
return5*
(4*(
3*(2
*fn(2
-1))
)return5*
(4*(
3*(2
*fn(1
)))return5*
(4*(
3*(2
*1))
此時,如果呼叫函式並且傳遞id為1時var jsondata =[,
]},]
},]// 乙個函式,接收傳遞的引數,獲取資料
function
getdata
(json,id)
;// 利用foreach遍歷資料,item為遍歷出來的資料
json.
foreach
(function
(item)
else
if(item.goods && item.goods.length >0)
});// 最終將拿到的資料返回
return o;
}
如果傳遞引數id為11時,則和上面的結果不一樣,會查到裡層的資料console.
log(
getdata
(jsondata,1)
)
再深一層,傳遞id為112
js函式遞迴
一 遞迴函式概念 自己呼叫自己。二 知識說明 function func func 三 函式 變數 用遞迴來求5的階乘 function func n return n func n 1 console.log func 5 三 函式 函式 斐波拉契題 兔子生兔子題目 從出生後第3個月起每個月都生一...
js 遞迴函式
定義 如果乙個函式在內部呼叫自身本身,這個函式就是遞迴函式。舉例說明 1.求n的階乘 n 1 x 2 x 3 x x n function factorial n return n factorial n 1 console.log factorial 5 factorial 5 5 factori...
js函式遞迴
一 知識說明 function fun fun 二 函式 變數 用遞迴 來求 5 的階乘 n n n 1 定義乙個函式,用於求 n 的階乘 function func n func n 1 因為傳遞的引數是 n 1,那麼就是求 n 1 的階乘 return n func n 1 console.lo...