2014-04-11 95 views
0

你好我碰到過這段代碼,我不知道它是如何工作的。如何將值傳遞給作爲參數的函數

function firstFunction(something, else){ 
    //stuff being done 
    return something; 
} 

var myFunction = firstFunction(function(a,b){ 
    return a*b; 
},'car'); 

所以我相當新的Javascript,所以我只是說它是一個非常混亂的語言。我理解我正在聲明一個變量,它將firstFunction賦值給自己,並將一些noname函數作爲第一個參數,將一個String作爲第二個參數。

我該如何將參數傳遞到noname函數?

+0

你想傳遞什麼地方?你想將「car」傳遞給匿名函數嗎? –

+0

可能重複[在JavaScript中創建自定義回調](http://stackoverflow.com/questions/2190850/create-a-custom-callback-in-javascript) –

+0

我想將值傳遞給函數(a,b )。我知道我可以使用myFunction.apply(this,arguments)來做到這一點,但我不完全理解'this'應用於什麼以及它在哪裏使用。 –

回答

0

是的,您的評估是非常正確的,雖然代碼有語法錯誤,因爲您可以使用else作爲標識符。這些被稱爲anonymous functions

JavaScript中的函數可以用作參數值或返回值,就像任何其他值一樣容易。這是什麼使他們的語言first-class citizens

你傳遞給firstFunction匿名函數返回,因此,如果你想將它分配給myFunction,你可以簡單地這樣做:

var result = myFunction(4, 5); // 20 
相關問題