递归的定义:函数中调用函数自己,此时就是递归,递归一定要有结束的条件
案例:
(1)递归实现:求n个数字的和 n=5—> 5+4+3+2+1
<script>
function getSum(x) {
if(x==1){
return 1;
}
return x+getSum(x-1);
}
console.log(getSum(5));
</script>
(2)求一个数字各个位数上的数字的和: 123 —>6 —1+2+3
<script>
function getEverySum(x) {
if(x<10){
return x;
}
return x%10+getEverySum(parseInt(x/10));
}
console.log(getEverySum(1364));//5
</script>
(3)求斐波那契数列
function getFib(x) {
if(x==1||x==2){
return 1
}
return getFib(x-1)+getFib(x-2);
}
console.log(getFib(12));