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