Метод apply

Методът apply позволява извикване на функция с зададен контекст. Първи параметър на метода следва да бъде контекстът на функцията, а вторият - масив от параметри на функцията.

Синтаксис

javascriptфункция.apply(контекст, масив от параметри);

Пример

Нека имаме input поле:

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

Нека е дадена и функция, която приема три параметъра:

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

Нека извикаме нашата функция така, че this вътре във функцията да бъде равен на нашето input поле, и при това да й предадем като параметри числата 1, 2 и 3:

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

Пример

Нека функцията не приема параметри:

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

В този случай при извикване на тази функция чрез apply е достатъчно да се подаде само първият параметър с контекста:

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

Вижте също

  • метод call,
    който извиква функция с контекст
  • метод bind,
    който свързва контекст с функция