6
我正在看別人的代碼並試圖理解它。他們有括號包圍一個函數調用的名字:圍繞函數名稱的括號是什麼意思?
myButton.onclick = (myFunction)(a, b, c);
這是不同於:
myButton.onclick = myFunction(a, b, c);
編輯:
只是爲了增加更多的情況下,函數myFunction的有以下形式:
myFunction = function(a, b, c) {
return function() {
// do something with a, b, and c
}
}
U表示括號正確嗎? – aaronman
調用的是將圍繞函數名稱的'()'的返回值。在你的例子中不會有任何影響,但是如果你從一個對象*(又名方法)*中獲取函數。在這種情況下,函數與對象不相關,所以'this'值將是默認值。所以'foo.myFunction()'可能與'(foo.myFunction)()'不同。 –
方括號:'[]',大括號/括號:'{}',尖括號:'< >',括號:'()'。 – Shaz