Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Boleh Meluluskan Argumen Tambahan kepada Fungsi Panggilan Balik JavaScript?

Bagaimanakah Saya Boleh Meluluskan Argumen Tambahan kepada Fungsi Panggilan Balik JavaScript?

Mary-Kate Olsen
Lepaskan: 2024-12-08 01:52:14
asal
895 orang telah melayarinya

How Can I Pass Additional Arguments to a JavaScript Callback Function?

Melalukan Argumen Tambahan kepada Fungsi Panggilan Balik

Dalam JavaScript, fungsi panggil balik memainkan peranan penting dalam pengaturcaraan tak segerak dan pengendalian acara. Walaupun fungsi panggil balik lazimnya menerima satu hujah, kadangkala anda perlu menyampaikan hujah tambahan kepada mereka.

Pertimbangkan senario berikut:

const callWithMagic = callback => {
  const magic = getMagic();
  callback(magic);
};

const processMagic = (magic, theAnswer) => {
  someOtherMagic();
};

// We want to pass processMagic to callWithMagic, but also pass 42 as the second parameter.
callWithMagic(); // What should we put here?
Salin selepas log masuk

Untuk mencapai ini, terdapat dua pendekatan:

Pembungkus Fungsi sebagai Panggilan Balik:

Kita boleh mencipta fungsi pembalut yang mengambil hujah ajaib dan menyerahkannya bersama-sama dengan argumen tambahan kepada fungsi panggil balik asal.

callWithMagic(function(magic) {
  return processMagic(magic, 42);
});
Salin selepas log masuk

ES6 Arrow Fungsi:

Fungsi anak panah ES6 menyediakan trengkas yang mudah untuk menulis pembalut fungsi.

callWithMagic(magic => processMagic(magic, 42));
Salin selepas log masuk

Kedua-dua pendekatan membenarkan anda menghantar argumen tambahan kepada fungsi panggil balik dengan mencipta fungsi pembalut yang memajukan argumen seperti yang diperlukan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Meluluskan Argumen Tambahan kepada Fungsi Panggilan Balik JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan