In JavaScript ist eine Callback-Funktion eine Funktion, die als Argument an eine andere Funktion übergeben wird. Wenn die andere Funktion den Rückruf aufruft, kann der Rückruf auf die an ihn übergebenen Parameter zugreifen.
Zur Veranschaulichung erstellen wir eine Funktion namens tryMe, die zwei Parameter akzeptiert und deren Werte meldet:
function tryMe(param1, param2) { alert(param1 + " and " + param2); }
Jetzt definieren wir eine Funktion namens callbackTester, die eine Callback-Funktion als Argument und zwei zusätzliche Parameter akzeptiert:
function callbackTester(callback, param1, param2) { callback(param1, param2); }
Um Parameter an den Callback zu übergeben, rufen wir einfach callbackTester mit den gewünschten Parametern auf:
callbackTester(tryMe, "hello", "goodbye");
Dadurch wird die tryMe-Funktion mit den Parametern „hello“ und „goodbye“ aufgerufen und deren Werte gemeldet.
Verwendung der Argumente Variable
If Wenn Sie mehr Flexibilität bei der Übergabe von Parametern an einen Rückruf benötigen, können Sie die Variable arguments verwenden. Diese Variable enthält ein Array aller an eine Funktion übergebenen Argumente, einschließlich der expliziten Parameter und aller zusätzlichen Argumente, die beim Aufruf der Funktion übergeben werden:
function tryMe(param1, param2) { alert(param1 + " and " + param2); } function callbackTester(callback) { callback(arguments[1], arguments[2]); } callbackTester(tryMe, "hello", "goodbye");
In diesem Beispiel rufen wir callbackTester mit einem einzelnen Argument auf, das ist die tryMe-Funktion. Die Variable arguments enthält jedoch alle drei an callbackTester übergebenen Parameter, sodass wir die benötigten Parameter extrahieren können:
Durch die Verwendung der Argumentvariablen können wir die entsprechenden Parameter zur Übergabe dynamisch abrufen der Rückruf, unabhängig davon, wie viele oder welche Art von Parametern an die aufrufende Funktion übergeben werden.
Das obige ist der detaillierte Inhalt vonWie übergebe ich Parameter an eine Callback-Funktion in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!