javascript 函數後面有多個小括號是怎麼回事?f( )( )( )...

有時我們看見js函數後面跟着多個小括號是怎麼回事?f( )( )( )...

f()意思是執行f函數,返回子函數

f()()執行子函數,返回孫函數

f()()()執行孫函數

... ...

但注意,如果想這樣執行,函數結構必須是這樣,f的函數體裏要return 子函數,子函數裏要return 孫函數,如果沒有return關鍵字,是不能這樣連續執行的,會報錯的。

舉個例子:k是f的子函數,return子函數k,所以f()()能連續執行。

    var i=1;
    function f(){
        i++;
        console.log("-------------  :  "+i)
        return k;
        function k() {
            return "I love you!"
        }
    }
    f();
    console.log("111111111111")
    f()()
    alert(f()())
結果如圖:



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章