Melaraskan Selang SetInterval Semasa Pelaksanaan
Mencari cara untuk mengubah suai secara dinamik selang setInterval semasa ia sedang berjalan, pertanyaan muncul dengan pendekatan yang dicadangkan untuk melaraskan selang berdasarkan pembilang.
The percubaan awal untuk menggunakan var interval = setInterval(function() { ... }, 10*counter); malangnya membuahkan hasil yang tidak berkesan. Untuk mencapai gelagat yang diingini, pertimbangkan untuk menggunakan fungsi tanpa nama:
var counter = 10; var myFunction = function(){ clearInterval(interval); counter *= 10; interval = setInterval(myFunction, counter); } var interval = setInterval(myFunction, counter);
Pendekatan ini melibatkan mengosongkan selang sedia ada, mengemas kini kaunter dan kemudian menetapkan selang baharu dengan selang yang dilaraskan.
Alternatif yang dicadangkan oleh A. Wolff memanfaatkan setTimeout dan bukannya clearInterval untuk mengelakkan keperluan untuk sentiasa mengosongkan dan menetapkan semula selang:
var counter = 10; var myFunction = function() { counter *= 10; setTimeout(myFunction, counter); } setTimeout(myFunction, counter);
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengubah Selang `setInterval` Secara Dinamik Semasa Pelaksanaan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!