Metoda apply

Metoda apply pozwala wywołać funkcję z określonym kontekstem. Pierwszym parametrem metody należy podać kontekst funkcji, a drugim - tablicę parametrów funkcji.

Składnia

javascriptfunkcja.apply(kontekst, tablica parametrów);

Przykład

Załóżmy, że mamy pole input:

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

Załóżmy, że mamy również funkcję przyjmującą trzy parametry:

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

Wywołajmy naszą funkcję tak, aby this wewnątrz funkcji był równy naszemu polu input, i jednocześnie przekażmy jej jako parametry liczby 1, 2 i 3:

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

Przykład

Załóżmy, że funkcja nie przyjmuje parametrów:

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

W tym przypadku przy wywołaniu tej funkcji przez apply wystarczy przekazać tylko pierwszy parametr z kontekstem:

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

Zobacz też

  • metoda call,
    która wywołuje funkcję z kontekstem
  • metoda bind,
    która wiąże kontekst z funkcją