递归
函数内部自己调用自己,这个函数就是递归函数
铁锅炖自己,但是要禁止无限套娃
简单理解:效果和循环一样,有于
递归很容易发生:“栈溢出”错误,不断开辟内存。所以必须要加退出条件return
var num=1;
function fn(){
console.log('我小楠楠贼六');
if(num==6){
return;//递归里面必须加退出条件
}
num++;
fn();
}
fn();
数学应用,阶乘
function fn(n){
if(n==1){
return n=1;
}else{
return n*fn(n-1);
}
console.log(fn(3));//6
``
//过程:输入3,返回3*fn(2);
不等于1,返回3*(2*fn(2-1))
==3*2*1