Kaedah call

Kaedah call membolehkan anda memanggil fungsi dengan konteks yang ditentukan. Parameter pertama kaedah ini hendaklah konteks fungsi, dan parameter seterusnya - parameter fungsi.

Sintaks

javascriptfungsi.call(konteks, parameter1, parameter2...);

Contoh

Katakan kita mempunyai input:

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

Katakan juga diberikan fungsi yang menerima tiga parameter:

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

Mari kita panggil fungsi kita supaya this dalam fungsi itu sama dengan input kami, dan pada masa yang sama memberikan nombor 1, 2 dan 3 sebagai parameternya:

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

Contoh

Katakan fungsi tidak menerima parameter:

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

Dalam kes ini, apabila memanggil fungsi ini melalui call, memadai untuk menghantar hanya parameter pertama dengan konteks:

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

Lihat juga

  • kaedah apply,
    yang memanggil fungsi dengan konteks
  • kaedah bind,
    yang mengikat konteks kepada fungsi