亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JS實現(xiàn)斐波那契數(shù)列的五種方式(小結(jié))

 更新時間:2020年09月09日 09:40:04   作者:一只菜鳥攻城獅啊  
這篇文章主要介紹了JS實現(xiàn)斐波那契數(shù)列的五種方式(小結(jié)),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

下面是五種實現(xiàn)斐波那契數(shù)列的方法

循環(huán)

function fibonacci(n){
 var res1 = 1;
 var res2 = 1;
 var sum = res2;
 for(var i = 1;i < n;i ++){
   sum = res1 + res2;
   res1 = res2;
   res2 = sum;
 }
 return sum;
}

普通遞歸

function fibonacci (n) {
 if ( n <= 1 ) {return 1};
 return fibonacci(n - 1) + fibonacci(n - 2);
}

尾遞歸

function fibonacci(n, ac1=1,ac2=1){
  if(n<=1){return ac2}
 return fibonacci(n-1, ac2, ac1 + ac2)
}
Generator 函數(shù)和for...of循環(huán)
// Generator 函數(shù)和for...of循環(huán)
function* fibonacci() {
 let [prev, curr] = [0, 1];
  // foo(;;)相當于死循環(huán) 等于while(1)
 for (;;) {
  yield curr;
  [prev, curr] = [curr, prev + curr];
 }
}
for (let n of fibonacci()) {
 if (n > 1000) break;
 console.log(n);
}

閉包實現(xiàn)

const fibonacci = function(){
  var mem = [0,1];
  var f = function(n){
    var res = mem[n];
    if(typeof res !== 'number'){
      mem[n] = f(n-1) + f(n-2);
      res = mem[n];
    }
    return res;
  }
  return f;
}();

到此這篇關(guān)于JS實現(xiàn)斐波那契數(shù)列的五種方式(小結(jié))的文章就介紹到這了,更多相關(guān)JS 斐波那契數(shù)列內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 基于原生JS實現(xiàn)圖片裁剪

    基于原生JS實現(xiàn)圖片裁剪

    要進行圖片編輯,最重要要能夠?qū)D片進行裁剪。主要的實現(xiàn)分成兩部分,一部分是前端利用js進行裁剪區(qū)域選擇,第二部分是利用PHP進行后臺處理?,F(xiàn)在就跟大家分享一下。
    2016-08-08
  • 原生js實現(xiàn)貪食蛇小游戲的思路詳解

    原生js實現(xiàn)貪食蛇小游戲的思路詳解

    這篇文章主要介紹了原生js實現(xiàn)貪食蛇小游戲的思路詳解,,文中給大家寫出了注釋,幫助大家理解代碼,需要的朋友可以參考下
    2019-11-11
  • JavaScript中this函數(shù)使用實例解析

    JavaScript中this函數(shù)使用實例解析

    這篇文章主要介紹了JavaScript中this函數(shù)使用實例解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-02-02
  • OfflineSave離線保存代碼再次發(fā)布使用說明

    OfflineSave離線保存代碼再次發(fā)布使用說明

    OfflineSave離線保存代碼再次發(fā)布使用說明...
    2007-05-05
  • js遍歷添加欄目類添加css 再點擊其它刪除css【推薦】

    js遍歷添加欄目類添加css 再點擊其它刪除css【推薦】

    這篇文章主要介紹了js遍歷添加欄目類添加css 再點擊其它刪除css的實例代碼,非常不錯,具有一定的參考借鑒借鑒價值,需要的朋友可以參考下
    2018-06-06
  • js中opener與parent的區(qū)別詳細解析

    js中opener與parent的區(qū)別詳細解析

    本篇文章主要是對js中opener與parent的區(qū)別進行了詳細的介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2014-01-01
  • 微信小程序?qū)崿F(xiàn)車牌鍵盤

    微信小程序?qū)崿F(xiàn)車牌鍵盤

    這篇文章主要為大家詳細介紹了微信小程序?qū)崿F(xiàn)車牌鍵盤,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • js怎么只刷新當前頁面一次

    js怎么只刷新當前頁面一次

    Javascript刷新頁面的幾種方法:location.reload()、location.replace(location)、history.go(0)、location=location、location.assign(location)、document.execCommand('Refresh')、window.navigate(location)、document.URL=location.href,js怎么只刷新當前頁面一次呢
    2023-09-09
  • springMvc 前端用json的方式向后臺傳遞對象數(shù)組方法

    springMvc 前端用json的方式向后臺傳遞對象數(shù)組方法

    今天小編就為大家分享一篇springMvc 前端用json的方式向后臺傳遞對象數(shù)組方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08
  • JavaScript中的細節(jié)分析

    JavaScript中的細節(jié)分析

    高山登不上,不是因為體力不支,只因鞋里一粒。學習也是如此,因而有必要把JavaScript中常見的和與其它語言不同的那些細節(jié)學習一下
    2012-06-06

最新評論