apply-metodi

apply-metodi mahdollistaa funktion kutsun annetulla kontekstilla. Menetelmän ensimmäisenä parametrina tulee määrittää funktion konteksti, ja toisena - funktion parametritaulukko.

Syntaksi

javascriptfunktio.apply(konteksti, parametritaulukko);

Esimerkki

Oletetaan, että meillä on syötekenttä:

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

Oletetaan myös, että on annettu funktio, joka ottaa kolme parametria:

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

Kutsutaan funktiotamme siten, että this funktion sisällä on yhtä suuri kuin syötekenttämme, ja samalla välitetään sille parametreina luvut 1, 2 ja 3:

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

Esimerkki

Oletetaan, että funktio ei ota parametreja:

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

Tässä tapauksessa kun kutsutaan tätä funktiota apply:n kautta, riittää välittää vain ensimmäinen parametri kontekstilla:

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

Katso myös

  • call-metodi,
    joka kutsuu funktiota kontekstilla
  • bind-metodi,
    joka sitoo kontekstin funktioon