浅谈递归就是在函数内部去调用其自身。
function a(n){
if(n<= 2){
return 2
}else{
return n*arguments.callee(n-1); //4*3*2*1
}
}
a(4) // 24
举个例子:
斐波那契数列:(兔子生兔子题目)–从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少
- 产量分析:1, 1, 2, 3, 5, 8, 13, 21 。。。
- 第n个月的兔子总数 = 第n-1个月的兔子总数 + 第n-2个月的兔子总数
问题: 求任意月兔子的总数
function func( n )
{
if (n == 0 || n == 1)
{
return 1;
}
return func(n-1) + func(n-2);
}
var a = func(22);
console.log(a);