使用递归,计算斐波那契数列
function fib(num) { if (num > 2) { return fib(num - 2) + fib(num - 1); } else { return 1; } } fib(6)
运行过程
1. return fib(4)+fib(5)
2.return fib(2)+fib(3)+fib(3)+fib(4)
3.return 1+fib(1)+fib(2)+fib(1)+fib(2)+fib(2)+fib(3)
4.return 1+1+1+1+1+1+fib(1)+fib(2)
5.return 1+1+1+1+1+1+1+1=8
所以结果为8
函数表达式定义函数时,若带上函数名,则函数名只在函数内部有效,
作用:递归调用本身
var sum = function x(num){
if(num>2){
return x(num-2)+x(num-1);
}else{
return 1;
}
}
sum(6)
x(5) //x is not defined
时间: 2024-11-08 20:12:56