Nwlapcug.com


Funzioni di callback in JavaScript

Funzioni di callback in JavaScript


In JavaScript, programmatori possono definire unità di codice, tra cui variabili e funzioni. Funzioni JavaScript possono anche ricevere i parametri, con il codice che chiama una funzione passando questi parametri come variabili o valori. È anche possibile passare un riferimento a un'altra funzione come un parametro. Una funzione di callback è in genere quello che viene chiamato quando un'altra funzione termina l'esecuzione. Per questo motivo, le funzioni di callback spesso appaiono come parametri ad altre funzioni.

Definizione di callback

Per implementare una funzione di callback, il codice JavaScript in una pagina deve innanzitutto definire la funzione. Nell'esempio di codice riportato di seguito viene definita una funzione e memorizza un riferimento a una variabile ad esso:
var callbackDefinition = function(numParam) {alert(numParam);};

La funzione utilizza un parametro numerico per dimostrazione. La funzione di callback può contenere qualsiasi codice JavaScript che potrebbe includere una funzione standard. Il codice sarà ora in grado di passare un riferimento alla funzione come parametro a un'altra funzione, utilizzando il nome della variabile.

Parametro callback

Una volta che uno script ha una funzione definita come una variabile, tale variabile può passare come parametro a un'altra funzione. Nell'esempio di codice riportato di seguito viene illustrata la tecnica:
mainFunction (10, callbackDefinition);

Questo codice chiama una funzione denominata, passando un parametro di numero e il nome della variabile di memorizzare il codice di funzione di callback. Il contorno della funzione chiamata qui deve corrispondere a questi due parametri. La funzione di ricezione la variabile di callback sarà in grado di chiamare la funzione che memorizza.

Esecuzione della funzione

Una volta passati alla funzione principale, una funzione di callback può essere eseguita. Nell'esempio di codice riportato di seguito viene illustrato:
Function mainFunction (myNum, callbackFn) {
Alert(myNum);
callbackFn(myNum*2);
}

Per dimostrazione, questo codice genera prima un avviso di JavaScript che farà sì che una finestra di dialogo venga visualizzato nel browser dell'utente. Una volta che questo codice viene eseguito, la funzione chiama la funzione di callback utilizzando il nome specificato come parametro. La chiamata di funzione callback include un parametro numerico, che è previsto dalla funzione che è stata inizialmente definita come una variabile.

Chiamata di funzione

Una volta che una pagina ha una funzione definita, incluso un callback, può eseguire questo codice. Spesso, gli sviluppatori indicano al browser per attendere un evento dell'utente, l'esecuzione di funzioni quando si verifica questa situazione. Ad esempio, il seguente codice HTML chiama una funzione:
< div onclick="doCallback()" > Ecco una sezione cliccabile < / div >

Se la funzione specificata come parametro contiene la definizione di variabile di callback e la chiamata alla funzione principale, questo creerà l'effetto di callback, come segue:
Function doCallback() () {
var callFn = function(numParam) {alert(numParam);};
mainFunction (10, callFn);
}

Una volta che la funzione principale esegue il proprio contenuto codice, chiama la funzione di callback.