Метод call
Метод call функцияни
берилган контекст билан чакириш имконини беради. Методнинг биринчи параметри сифатида
функциянинг контексти кўрсатилади,
қолган параметрлар эса функциянинг параметрлари бўлади.
Синтаксис
функция.call(контекст, параметр1, параметр2...);
Мисол
Фарз қилайлик, бизда инпут бор:
<input id="elem" value="text">
Яна бир функция берилган бўлиб, у учта параметр қабул қилади:
function func(param1, param2, param3) {
console.log(this.value + param1 + param2 + param3);
}
Келинг, бизнинг функциямизни шундай чакирайликки, this
функция ичида бизнинг инпутимизга тенг бўлсин, ва
бунинг учун унга 1,
2 ва 3 сонларини параметр сифатида берайлик:
let elem = document.querySelector('#elem');
func.call(elem, 1, 2, 3);
Мисол
Фарз қилайлик, функция параметрлар қабул қилмасин:
function func() {
console.log(this.value);
}
Бундай ҳолда бу функцияни
call орқали чакирганда, фақат биринчи параметрни
контекст билан ўтказиш кифоя:
let elem = document.querySelector('#elem');
func.call(elem);