在 JavaScript 中,回呼函數是作為參數傳遞給另一個函數的函數。當其他函數呼叫回調時,回調可以存取傳遞給它的參數。
為了說明這一點,讓我們建立一個名為 tryMe 的函數,它接受兩個參數並警告它們的值:
function tryMe(param1, param2) { alert(param1 + " and " + param2); }
現在,讓我們定義一個名為callbackTester的函數,它接受一個回調函數作為參數和兩個附加參數:
function callbackTester(callback, param1, param2) { callback(param1, param2); }
要將參數傳遞給回調,我們只需使用所需的參數呼叫callbackTester:
callbackTester(tryMe, "hello", "goodbye");
這將使用參數「hello」和「goodbye」呼叫tryMe 函數並提醒它們的值。
使用參數變數
如果如果您需要更靈活地將參數傳遞給回調,可以使用arguments 變數。此變數包含傳遞給函數的所有參數的數組,包括顯式參數和呼叫函數時傳遞的任何附加參數:
function tryMe(param1, param2) { alert(param1 + " and " + param2); } function callbackTester(callback) { callback(arguments[1], arguments[2]); } callbackTester(tryMe, "hello", "goodbye");
在本範例中,我們使用單一參數呼叫callbackTester,其中是tryMe函數。然而,arguments 變數包含了傳遞給callbackTester 的所有三個參數,允許我們提取我們需要的參數:
透過使用arguments 變量,我們可以動態檢索要傳遞給的適當參數回調,無論傳遞給呼叫函數的參數數量或類型為何。
以上是如何在 JavaScript 中將參數傳遞給回呼函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!