js递归函数

递归函数:是指函数调用自己本身,则称该函数为递归函数。

        //以下就是递归函数,但是会死循环,因为没有出口
        function f(){
            console.log(‘递归函数‘);
            f();
        }

        f();

递归运算会无终止地自身调用。因此,在递归运算中要结合 if 语句进行控制,只有在某个条件成立时才允许执行递归,否则不允许调用自身。

 

例子1:

        // 1 1 2 3 5 8 13 21..... 根据规律求出第20个数是多少
        //规律 n = (n-1) + (n-2) 就是当前这个数等于前面两个数相加的和

        function f(n){
           
            if (n <= 1 ) {
                return n;
            }else{
                return f(n-1) + f(n-2);
            }
        }
        
        var a = f(9);//求第几个数是多少 就是第8个数+第7个数的和
        console.log(a);//打印34

 

例子2:

        //0 1 3 6 10 15 21... 求第20位数是多少

        //规律:(n-1) + n

        function f(n){
            if (n == 0) {
                return 0;
            }else{
                return n + f(n-1);
            }
        }

        console.log(f(0));
        console.log(f(1));
        console.log(f(2));
        console.log(f(3));
        console.log(f(20));

 

js递归函数

上一篇:设备像素、css像素、dpr、ppi


下一篇:使用Sublime Text开发微信小程序