Metoden apply

Metoden apply giver mulighed for at kalde en funktion med en given kontekst. Den første parameter i metoden skal være funktionens kontekst, og den anden skal være en array af funktionens parametre.

Syntaks

javascriptfunktion.apply(kontekst, parameterarray);

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.apply(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, når funktionen kaldes via apply, kun at sende den første parameter med konteksten:

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

Se også

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