Методи apply

Методи apply имкон медиҳад, ки функсияро бо контексти додашуда фарохонӣ кунед. Ҳамчун параметри якуми метод бояд контексти функсияро нишон диҳед, ва ҳамчун дуюм - массив параметрҳои функсияро.

Синтаксис

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

Намуна

Фарз мекунем, ки мо инпут дорем:

html<input id="elem" value="матн">

Ҳамчунин фарз мекунем, ки функсияе дода шудааст, ки се параметр мегирад:

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

Биёед функсияи худро ба тавре фарохонем, ки this дар дохили функсия ба инпути мо баробар бошад, ва дар ҳамон ҳол параметрҳои ададҳои 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,
    ки контекстро ба функсия мебандад