JavaScript递归函数

Posted stdzz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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));

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

 

以上是关于JavaScript递归函数的主要内容,如果未能解决你的问题,请参考以下文章

48个值得掌握的JavaScript代码片段(上)

精心收集的 48 个 JavaScript 代码片段,仅需 30 秒就可理解!(转载)

javascript函数(声明,传参,返回值,递归)

寻找改进我的 javascript (jquery) 代码的想法。递归函数

常用Javascript代码片段集锦

Javascript - 在递归函数中获取 setTimeout 的返回值