var value=[1,2,3,4,5,6];
var result=[];
var i;
function find(i){
if(i<4){
result[i]=value[i]
return find(i+1);
}else {
return result;
}
}
find(0);
//或者你可以这样写
var value=[1,2,3,4,5,6];
var result=[];
var i;
function find(i){
if(i<4){
result[i]=value[i]
find(i+1);
}
}
find(0);
console.log(result);//就是你想要的结果
你实际上是添加进去了的,但只是没有打印出来而已。不信你执行完你的代码再
console.log(result)
试试。那为啥没打印出来呢?因为控制台执行完之后返回的是find(0)
函数的返回值,而find(0)
中并不会进入else
语句中,所以自然没有返回值。有人会说不是还有find(4)
嘛?,那么我请问,find(4)
你打印了么?没有 return 函数的返回值为undefined