2009-11-09 3 views
0

J'ai un javascript que je n'ai pas écrit, mais je dois l'utiliser ..javascript question rappel

function function1() 
    ... body.. 
    and at the end 
    I have this 
'callback': 'getListCallback' 
    } 

Qu'est-ce que signifie le rappel et getListCallback = function(obj) est une autre fonction, que cela signifie que les résultats de function1 sont retourné à la fonction getListCallback?

Tnx

+0

réécrire le code afin qu'il soit réel javascript et non pseudo code – Marius

Répondre

4

Une fonction de rappel est une fonction qui va être appelé plus tard, généralement quand un événement se produit. Par exemple, lors de l'ajout d'un écouteur d'événement:

function callback(){ 
    alert("click"); 
} 
document.body.addEventListener("click", callback, true); 

Dans de nombreux cas, vous passez la fonction de rappel comme une fonction anonyme:

setTimeout(function(){alert("It's been 1 second");}, 1000); 

Le code getListCallback = function1(obj); n'appellera getListCallback les résultats de function1 (obj). Il stockera tous les retours function1(obj) dans getListCallback. Si function1 retourne une fonction, vous pouvez appeler cette fonction plus tard, comme ceci:

function function1(obj){ 
    return function(){ 
    alert("getListCallback was called. obj = "+obj); 
    } 
} 
getListCallback = function1(1); 
getListCallback(); 
0

Oui, il faut dire que

0

normalement une fonction de rappel, est une fonction qui appellera après l'exécution de la fonction en cours terminé. getListCallback = function (obj) {// faire quelque chose} revient à assigner cette "fonction (obj) {// ....}" à une variable qui peut être utilisée à n'importe quel endroit où vous devez utiliser cette fonction.