Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimanakah saya menghantar parameter kepada fungsi panggil balik dalam JavaScript?

Bagaimanakah saya menghantar parameter kepada fungsi panggil balik dalam JavaScript?

Linda Hamilton
Linda Hamiltonasal
2024-11-03 08:37:03879semak imbas

How do I pass parameters to a callback function in JavaScript?

Melalukan Parameter ke Fungsi Panggilan Balik dalam JavaScript

Dalam JavaScript, fungsi panggil balik ialah fungsi yang dihantar sebagai argumen kepada fungsi lain. Apabila fungsi lain memanggil panggil balik, panggil balik boleh mengakses parameter yang dihantar kepadanya.

Untuk menggambarkan, mari buat fungsi yang dipanggil tryMe yang mengambil dua parameter dan memaklumkan nilainya:

function tryMe(param1, param2) {
  alert(param1 + " and " + param2);
}

Sekarang, mari kita takrifkan fungsi dipanggil callbackTester yang mengambil fungsi panggil balik sebagai hujah dan dua parameter tambahan:

function callbackTester(callback, param1, param2) {
  callback(param1, param2);
}

Untuk menghantar parameter kepada panggil balik, kami hanya menggunakan callbackTester dengan parameter yang dikehendaki:

callbackTester(tryMe, "hello", "goodbye");

Ini akan memanggil fungsi tryMe dengan parameter "hello" dan "selamat tinggal" dan memaklumkan nilainya.

Menggunakan pembolehubah argumen

Jika anda memerlukan lebih fleksibiliti dalam menghantar parameter kepada panggilan balik, anda boleh menggunakan pembolehubah argumen. Pembolehubah ini mengandungi tatasusunan semua argumen yang dihantar kepada fungsi, termasuk parameter eksplisit dan sebarang argumen tambahan yang diluluskan apabila menggunakan fungsi:

function tryMe(param1, param2) {
  alert(param1 + " and " + param2);
}

function callbackTester(callback) {
  callback(arguments[1], arguments[2]);
}

callbackTester(tryMe, "hello", "goodbye");

Dalam contoh ini, kami memanggil callbackTester dengan satu argumen, yang ialah fungsi tryMe. Walau bagaimanapun, pembolehubah argumen mengandungi ketiga-tiga parameter yang dihantar kepada callbackTester, membolehkan kami mengekstrak parameter yang kami perlukan:

  • argumen[1] merujuk kepada parameter kedua yang dihantar kepada callbackTester, iaitu "hello".
  • argumen[2] merujuk kepada parameter ketiga yang diserahkan kepada callbackTester, iaitu "selamat tinggal".

Dengan menggunakan pembolehubah argumen, kita boleh mendapatkan semula parameter yang sesuai secara dinamik untuk dihantar ke panggilan balik, tidak kira berapa banyak atau jenis parameter yang dihantar ke fungsi panggilan.

Atas ialah kandungan terperinci Bagaimanakah saya menghantar parameter kepada fungsi panggil balik dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn