Terugbelfuncties in JavaScript

In JavaScript kunnen programmeurs code-eenheden definiëren, inclusief variabelen en functies. JavaScript-functies kunnen ook parameters ontvangen, waarbij de code een functie aanroept die deze parameters als variabelen of waarden doorgeeft. Het is ook mogelijk om een ​​verwijzing naar een andere functie als parameter door te geven. Een callback-functie is meestal een functie die wordt aangeroepen wanneer een andere functie wordt uitgevoerd. Om deze reden verschijnen callback-functies vaak als parameters voor andere functies.

Terugbeldefinitie

Om een ​​callback-functie te implementeren, moet de JavaScript-code in een pagina eerst de functie definiëren. De volgende voorbeeldcode definieert een functie en slaat er een variabeleverwijzing naar op: var callbackDefinition = function(numParam) { alert(numParam); };

De functie gebruikt een numerieke parameter voor demonstratie. De callback-functie kan elke JavaScript-code bevatten die een standaardfunctie zou kunnen bevatten. De code kan nu een verwijzing naar de functie als parameter doorgeven aan een andere functie, met behulp van de variabelenaam.

Terugbelparameter

Zodra een script een functie heeft die als variabele is gedefinieerd, kan het die variabele als parameter doorgeven aan een andere functie. De volgende voorbeeldcode demonstreert de techniek: mainFunction(10, callbackDefinition);

Deze code roept een benoemde functie aan, geeft een getalparameter door en de naam van de variabele die de callback-functiecode opslaat. De omtrek van de functie die hier wordt aangeroepen, moet overeenkomen met deze twee parameters. De functie die de callback-variabele ontvangt, kan de functie oproepen die wordt opgeslagen.

Functie Uitvoering

Eenmaal doorgegeven aan de hoofdfunctie, kan een callback-functie worden uitgevoerd. De volgende voorbeeldcode laat zien: function mainFunction(myNum, callbackFn) { alert(myNum); callbackFn(mijnNum*2); }

Ter demonstratie voert deze code eerst een JavaScript-waarschuwing uit, waardoor een dialoogvenster in de browser van de gebruiker verschijnt. Zodra deze code is uitgevoerd, roept de functie de callback-functie aan met de naam die als parameter is opgegeven. De callback-functieaanroep bevat een numerieke parameter, die wordt verwacht door de functie die aanvankelijk als een variabele was gedefinieerd.

Functie-oproep

Zodra een pagina een functie heeft gedefinieerd, inclusief een callback, kan deze deze code uitvoeren. Vaak geven ontwikkelaars de browser de opdracht om naar een gebruikersgebeurtenis te luisteren en functies uit te voeren wanneer dit gebeurt. De volgende HTML-code roept bijvoorbeeld een functie aan: Hier is een aanklikbare sectie

Als de functie gespecificeerd als parameter de callback-variabeledefinitie en de aanroep van de hoofdfunctie bevat, wordt het callback-effect als volgt gecreëerd: function doCallback() { var callFn = function(numParam) { alert(numParam); }; mainFunction(10, callFn); }

Zodra de hoofdfunctie zijn eigen code-inhoud uitvoert, roept deze de callback-functie aan.