2010-07-13 11 views

risposta

13

è possibile eseguire una funzione nel contesto di un oggetto utilizzando call:

fn.call(obj, 'param') 

C'è anche apply

unica differenza è la sintassi per gli argomenti di alimentazione.

+0

grazie! ha funzionato perfettamente! – Kyle

2

È possibile utilizzare apply() o call().

O consente di eseguire una funzione con la scelta di ciò che this è all'interno della funzione. Apply accetta gli argomenti per la funzione come matrice, mentre call consente di specificarli singolarmente.

2
funct.call(objThatWillBeThis, arg1, ..., argN); 

o

funct.apply(objThatWillBeThis, arrayOfArgs); 
2

È possibile utilizzare uno .Call() o .Applicare(). Secondo il vostro requisito Here è un articolo su di loro.

In sostanza si vuole:

function(fn){ 
    //do some stuff 
    fn.call(whateverToSetThisTo); //call fn, 

} 
Problemi correlati