91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

關于JS遞歸的用法

發布時間:2020-06-30 11:22:57 來源:億速云 閱讀:184 作者:清晨 欄目:web開發

這篇文章主要介紹關于JS遞歸的用法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

遞歸:

函數中用調用函數自己,此時就是遞歸,遞歸一定要有結束條件

    function f1() {
        console.log("從前有座山,山里有個廟,廟里有個老和尚給小和尚講故事:");
        f1();
    };
    f1();//瀏覽器崩潰,因為沒有結束條件——死循環

	改進如下:
	    var i=0;
    function f1() {
        i++;
        if (i<5){
            f1();
        }
        console.log("從前有座山,山里有個廟,廟里有個老和尚給小和尚講故事:");
    };
    f1();

遞歸實現:求n個數字的和 n=5 ------->5+4+3+2+1

//for 循環寫法:
    var sum=0;
    for (var i=0;i<=5;i++){
        sum+=i;
    }
    console.log(sum);
----------------------分割線---------------------------

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

    var sum1=getSum(5);
    console.log(sum1);
    console.log(getSum(10));

執行過程:
代碼執行getSum(5)—>進入函數,此時的x是5,執行的是5+getSum(4),此時代碼等待
此時5+getSum(4),代碼先不進行計算,先執行getSum(4),進入函數,執行的是4+getSum(3),等待, 先執行的是getSum(3),進入函數,執行3+getSum(2),等待,先執行getSum(2),進入函數,執行 2+getSum(1);等待, 先執行getSum(1),執行的是x==1的判斷,return 1,所以,
此時getSum(1)的結果是1,開始向外走出去
2+getSum(1) 此時的結果是:2+1
執行:
getSum(2)---->2+1
3+getSum(2) 此時的結果是3+2+1
4+getSum(3) 此時的結果是4+3+2+1
5+getSum(4) 此時的結果是5+4+3+2+1

    結果:15

再來幾個:

    //遞歸案例:求一個數字各個位數上的數字的和:  123   --->6 ---1+2+3
    //523
    function getEverySum(x) {
        if(x<10){
            return x;
        }
        //獲取的是這個數字的個位數
        return x%10+getEverySum(parseInt(x/10));
    }
    console.log(getEverySum(1364));//5
 //遞歸案例:求斐波那契數列

    function getFib(x) {
        if(x==1||x==2){
            return 1
        }
        return getFib(x-1)+getFib(x-2);
    }
    console.log(getFib(12));

以上是關于JS遞歸的用法的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

临城县| 龙岩市| 新建县| 天长市| 休宁县| 宁化县| 新闻| 四川省| 栾川县| 平定县| 萨迦县| 南平市| 水城县| 玉田县| 永丰县| 林周县| 论坛| 于都县| 上思县| 河曲县| 德惠市| 吉安市| 五大连池市| 城固县| 钦州市| 济阳县| 青冈县| 普洱| 专栏| 开江县| 广丰县| 南平市| 社会| 南乐县| 榆树市| 海原县| 临颍县| 库车县| 德格县| 乌兰察布市| 银川市|