Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Lulus Fungsi sebagai Parameter dalam JavaScript Tanpa Pelaksanaan Segera?

Bagaimana untuk Lulus Fungsi sebagai Parameter dalam JavaScript Tanpa Pelaksanaan Segera?

DDD
Lepaskan: 2024-11-28 08:19:10
asal
1061 orang telah melayarinya

How to Pass Functions as Parameters in JavaScript Without Immediate Execution?

Meluluskan Fungsi sebagai Parameter dalam JavaScript

Dalam JavaScript, adalah mungkin untuk menghantar fungsi sebagai parameter kepada fungsi lain tanpa menggunakan fungsi tersebut sebelum waktunya. Ini boleh berguna apabila anda ingin menangguhkan pelaksanaan fungsi sehingga satu masa kemudian.

Masalah:

Apabila menghantar fungsi sebagai parameter, ia adalah penting untuk mengelak daripada melaksanakannya dengan segera. Sebagai contoh, kod berikut melaksanakan refreshContactList() apabila ia diluluskan sebagai parameter untuk addContact():

addContact(entityId, refreshContactList());
Salin selepas log masuk

Penyelesaian:

Untuk lulus rujukan fungsi tanpa melaksanakannya, cuma keluarkan kurungan:

addContact(entityId, refreshContactList);
Salin selepas log masuk

Teknik ini membolehkan anda lulus fungsi sebagai parameter tanpa mencetuskan seruannya. Berikut ialah contoh yang menggambarkan cara untuk menghantar fungsi sebagai parameter dan melaksanakannya kemudian:

function addContact(id, refreshCallback) {
    refreshCallback(); // Execute the function passed as the second parameter
}

function refreshContactList() {
    alert('Hello World');
}

addContact(1, refreshContactList);
Salin selepas log masuk

Dalam contoh ini, fungsi addContact() mengambil dua parameter: id dan refreshCallback. Apabila fungsi addContact() dipanggil, hujah refreshCallback dihantar sebagai rujukan kepada fungsi refreshContactList(). Fungsi refreshContactList() tidak dilaksanakan sehingga ia dipanggil dalam fungsi addContact().

Atas ialah kandungan terperinci Bagaimana untuk Lulus Fungsi sebagai Parameter dalam JavaScript Tanpa Pelaksanaan Segera?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan