千鋒web前端開發(fā)項(xiàng)目教程_1000集完全零基礎(chǔ)入門HTML5+CSS3+JS到

# 概念:在函數(shù)內(nèi)部,自己調(diào)用自己
# 特點(diǎn):遞歸函數(shù),必須給自己找一個(gè)出口,否則會(huì)變成一個(gè)死遞歸。造成內(nèi)存溢出
# 缺點(diǎn):1. 代碼晦澀,不易理解;2. 代碼執(zhí)行效率低
# 使用場(chǎng)景:當(dāng)不確定需要遍歷多少次的時(shí)候。
# 示例:
// 1. 計(jì)算100以內(nèi)的階乘
// 100 * 99 * 98 *... *1
function fn(n) {
??if (n == 1) return 1
??return n * fn(n - 1)
}
console.log(fn(1000))
var sum = 1
for (var i = 1; i <= 1000; i++) {
??sum *= i
}
console.log(sum);
// 斐波那契數(shù)列: 兔子數(shù)列
// 1,1,2,3,5,8,13,21...
// 規(guī)則:1. 前兩位必然是1; 2. 從第三位數(shù)開始,每一位都是前兩位的和
function fun(n) {
??if (n == 1 || n == 2) return 1
??return fun(n - 1) + fun(n - 2)
}
console.log(fun(2));
標(biāo)簽: