JavaScript递归函数

1.什么叫做递归函数?就是在函数内调用函数本身,很典型性的一个例子就是用函数求斐波拉契数列:

function fibonacciSequence(n) {
            if(n == 1 || n == 2){
                return 1;
            }else if(n == 3){
                return fibonacciSequence(2) + fibonacciSequence(1);
            }else if(n == 4){
                return fibonacciSequence(3)+fibonacciSequence(2);
            }else if(n == 5){
                return fibonacciSequence(4) + fibonacciSequence(3);
            }else if(n == 6){
                return fibonacciSequence(5) + fibonacciSequence(4);
            }
           //·········
            else if(n == n){
                return fibonacciSequence(n-1) + fibonacciSequence(n-2)
            };
        };
        console.log(fibonacciSequence(10));

递归函数经常用来解决一些循环重复的问题,虽然很好用,但是它非常消耗性能,递归函数的需要注意的是一定要有结束条件,否则会导致死循环。

 

猜你喜欢

转载自www.cnblogs.com/stdzz/p/11516027.html