Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Menggunakan `setInterval` dan `clearInterval` untuk Pelaksanaan Fungsi Terkawal?

Bagaimana untuk Menggunakan `setInterval` dan `clearInterval` untuk Pelaksanaan Fungsi Terkawal?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-19 00:30:09943semak imbas

How to Use `setInterval` and `clearInterval` for Controlled Function Execution?

Cara Mengawal Selang dengan setInterval dan clearInterval

Dalam konteks pengendalian acara papan kekunci, persoalan timbul tentang penggunaan setInterval dan clearInterval untuk menguruskan pelaksanaan fungsi. Mari kita terokai perbezaan antara kaedah ini.

setInterval: Menyediakan Pemasa Berulang

setInterval menetapkan pemasa yang melaksanakan fungsi berulang kali pada selang waktu tertentu dalam milisaat. Sebagai contoh, kod berikut menyediakan pemasa untuk memanggil fungsi drawAll() setiap 20 milisaat:

setInterval(drawAll, 20);

Walau bagaimanapun, jika anda berhasrat untuk memanggil fungsi sekali sahaja, menggunakan setInterval adalah tidak sesuai, kerana ia mewujudkan gelung berterusan. Untuk mengelakkan ini, anda boleh menggunakan clearInterval.

clearInterval: Membatalkan Pemasa

clearInterval membolehkan anda menghentikan pemasa berulang. Ia menerima pemegang yang dikembalikan oleh setInterval sebagai hujah. Dengan menetapkan pemegang kepada 0, anda boleh membatalkan pemasa dan menghalangnya daripada menembak lebih jauh:

var handle = setInterval(drawAll, 20);

// When you want to cancel it:
clearInterval(handle);
handle = 0;

Menggunakan setTimeout untuk Pelaksanaan Satu Kali

Jika anda perlukan untuk menjadualkan fungsi untuk dilaksanakan sekali sahaja, gunakan setTimeout sebaliknya. Ia menyediakan fungsi yang serupa tetapi tidak mencipta gelung berulang. Kod berikut memanggil fungsi drawAll() sekali selepas kelewatan 20-milisaat:

setTimeout(drawAll, 20);

Ingat, setInterval sesuai untuk mencipta pemasa yang berulang kali melaksanakan fungsi, manakala clearInterval digunakan untuk menghentikan pemasa sedemikian. Sebaliknya, setTimeout digunakan untuk menjadualkan fungsi untuk diaktifkan sekali sahaja selepas kelewatan yang ditentukan.

Atas ialah kandungan terperinci Bagaimana untuk Menggunakan `setInterval` dan `clearInterval` untuk Pelaksanaan Fungsi Terkawal?. 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