创建函数,传递一个数字n,返回斐波那契数列的第n的值。

斐波那契数列

 第1项和第2项的值是1,从第3项开始,每项的值是前两项相加的和

1   1   2    3    5    8    13    21......

法1:

function fn(n){
   var a=1,b=1;
   for(var i=3; i<=n;i++){
      //循环体就是要执行的挪动
      //a的值为上一次b的值
     //b的值是上一次a和b的和
     var c=a;
     a=b;
     b=c+b;
   }
   return b;
}
var r=fn(5);
console.log(r);

法2:函数调用

function fn(n){
    if(n===1 || n===2){
        return 1;
    }
    return fn(n-1) +fn(n-2);
}
var r = fn();
console.log(r);
那些看似不起波澜的日复一日,会突然在某一天让人看到坚持的意义。
原文地址:https://www.cnblogs.com/Dcode/p/12755160.html