Njia call

Njia call inaruhusu kuita kitendakazi kwa muktadha uliopewa. Kigezo cha kwanza cha njia hii kinapaswa kubainisha muktadha wa kitendakazi, na vigezo vilivyobaki ni vigezo vya kitendakazi.

Syntax

javascriptkitendakazi.call(muktadha, kigezo1, kigezo2...);

Mfano

Tuchukulie tuna kichupo cha ingizo:

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

Tuchukulie pia kuna kitendakazi kinachokubali vigezo vitatu:

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

Wacha tuite kitendakazi chetu kivyoelekeza this ndani ya kitendakazi uwe sawa na kichupo chetu cha ingizo, na wakati huo huo tukipe tarakimu 1, 2 na 3 kama vigezo:

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

Mfano

Tuchukulie kitendakazi hakikubali vigezo:

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

Katika kesi hii, wakati wa kuita kitendakazi hiki kupitia call inatosha kupitisha tu kigezo cha kwanza kilicho na muktadha:

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

Angalia Pia

  • njia apply,
    ambayo inaita kitendakazi kwa muktadha
  • njia bind,
    ambayo inabandika muktadha kwa kitendakazi