递归
一个函数在内部调用本身,就是递归函数。(函数内部自己调用自己) 递归函数的作用和循环一样。 递归函数需要退出条件。
var num = 1
function fn() {
console.log('这是一个递归函数')
if (num == 10) {
return
}
num++
fn()
}
fn()案例应用function fun(n) {
if (n == 1) {
return 1
}
return n + fun(n - 1)
}
console.log(fun(3))
console.log(fun(4))
var total = 1
for (var i = 1; i <= 3; i++) {
total *= i
}
console.log(total)
function fn(num) {
if (num == 1) {
return 1
}
return num * fn(num - 1)
}
console.log(fn(2))
console.log(fn(3))
// 1 1 2 3 5 8 13 21 34 55
function fn(n) {
if (n == 1 || n == 2) {
return 1
}
return fn(n - 1) + fn(n - 2)
}
console.log(fn(1))
console.log(fn(5))
console.log(fn(10))
var arr = [1, 3, 5, 7, 9]
function getAdd(arr, n) {
if (n == 1) {
return arr[0]
}
return arr[n - 1] + getAdd(arr, n - 1)
}
console.log(getAdd(arr, 3))
function moner(year) {
if (year == 1) {
return 10
}
return (1 + 0.08) * moner(year - 1)
}
console.log(moner(3))
// 1元 1瓶
// 2元 5瓶
// 3元 11瓶
// 4元 17瓶
// 5元 23瓶
function water(n) {
if (n == 1) {
return 1
} else if (n == 2) {
return 5
} else {
return water(n - 1) + 6
}
}
console.log(water(3))
console.log(water(4))
|