javascript函数的递归调用记得加上return
javascript函数的递归调用记得加上return下面通过两个简单实例介绍 在函数的递归调用时,加上return与不加return时的返回值。
实例一
1、不加return
var i = 0;
function fn(){
i++;
if(i < 10){
fn();
}else{
return i;
}
}
var result = fn();
console.log(result);
备注:打印出来的是 undefined
2、加return
var i = 0;
function fn(){
i++;
if(i < 10){
return fn();
}else{
return i;
}
}
var result = fn();
console.log(result);
备注:打印出来的是正确值:10
实例二
1、不加return
function Fibonacci(n){
if(n==1){
return 1;
}else if(n==2){
return 1;
}else{
Fibonacci(n-1)+ Fibonacci(n-2);
}
}
备注:返回的是 undefined
2、加return
function Fibonacci(n){
if(n==1){
return 1;
}else if(n==2){
return 1;
}else{
return Fibonacci(n-1)+ Fibonacci(n-2);
}
}
备注:返回的是正确值