Metoden call

Metoden call giver mulighed for at kalde en funktion med en given kontekst. Den første parameter for metoden skal være funktionens kontekst, og de resterende parametre - funktionens parametre.

Syntaks

javascriptfunktion.call(kontekst, parameter1, parameter2...);

Eksempel

Lad os sige, at vi har et inputfelt:

html<input id="elem" value="text">

Lad os også sige, at der er en funktion, der tager tre parametre:

javascriptfunction func(param1, param2, param3) {
  console.log(this.value + param1 + param2 + param3);
}

Lad os kalde vores funktion, så this inde i funktionen er lig med vores inputfelt, og samtidig give den tallene 1, 2 og 3 som parametre:

javascriptlet elem = document.querySelector('#elem');
func.call(elem, 1, 2, 3);

Eksempel

Lad os sige, at funktionen ikke tager parametre:

javascriptfunction func() {
  console.log(this.value);
}

I dette tilfælde er det nok kun at sende den første parameter med konteksten, når funktionen kaldes via call:

javascriptlet elem = document.querySelector('#elem');
func.call(elem);

Se også

  • metoden apply,
    som kalder en funktion med en kontekst
  • metoden bind,
    som binder en kontekst til en funktion