JavaScript < ES5、ES6、ES7、… >

JavaScript递归

2019-03-23  本文已影响11人  nomooo

什么是递归?
在函数A中调用函数A自己,就是递归,但是递归要有结束的条件
递归------>如果没有结束的条件就是一个死循环

   var i=0;
   function f1() {
     i++;
     console.log("从前有个山,山里有个庙,庙里有个和尚给小和尚讲故事:");
     if(i<5){
       f1();
     }

   }
   f1();

递归举例

    function getSum(x) {
      if(x==1){
        return 1;
      }
      return x+getSum(x-1);
    }

    var result=getSum(5);
    console.log(result);

-求一个数字的每个位数上的和 :如:23--->5 如果是一位数,就直接返回

    function getnumberSum(x) {
      if(x<10){
        return x;
      }
      return parseInt(x%10+getnumberSum(x/10));
    }
    console.log(getnumberSum(123));
    function getFib(x) {
      if(x==1||x==2){//结束条件
        return 1;
      }
      return getFib(x-1)+getFib(x-2);
    }
    //
    console.log(getFib(6));//8

相关附加
函数尾调用以及尾递归

上一篇 下一篇

猜你喜欢

热点阅读