2016-08-18 54 views
0
f2=function(fn){ 
    return fn 
}; 

f1 = f2(function(a,b){ 
    console.log('' + a+ b) 
    }); 

f1(3,4); 

輸出是34是否將參數傳遞給函數參數?

爲什麼是參數(3和4)傳遞到f3的?

+0

F3裝置 功能(A,B ){console.log(''+ a + b)} 哪個js功能是? – Charles

+1

*「哪個js功能是?」*功能是對象。 (或者你可能會聽到「功能是第一類公民」,或者「JS具有頭等功能」,或者其他變體)。可以傳遞對函數的引用。所以'f2()'只需傳遞給它的匿名函數並立即返回它。所以'f1'就是指那個匿名函數。 – nnnnnn

回答

1

爲什麼參數(3和4)傳遞給f3?

函數從f1返回

f2(function(a,b){ 
    console.log('' + a+ b) 
}); 

調用()34作爲參數傳遞f1(3,4);,其中a3b4

+0

我明白了。正如@nnnnnn所說,'f1'是指匿名函數。謝謝。 – Charles