Методот call

Методот call овозможува повикување на функција со зададен контекст. Како прв параметар на методот треба да се наведе контекстот на функцијата, а како останати параметри - параметрите на функцијата.

Синтакса

javascriptфункција.call(контекст, параметар1, параметар2...);

Пример

Да претпоставиме дека имаме 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.call(elem, 1, 2, 3);

Пример

Да претпоставиме дека функцијата не прима параметри:

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

Во овој случај, при повикување на оваа функција преку call доволно е да се пренесе само првиот параметар со контекстот:

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

Погледнете исто така

  • методот apply,
    кој ја повикува функцијата со контекст
  • методот bind,
    кој го врзува контекстот за функцијата