Rumah > hujung hadapan web > tutorial js > Apakah Perbezaan Antara `setInterval` dan `setTimeout` dalam JavaScript?

Apakah Perbezaan Antara `setInterval` dan `setTimeout` dalam JavaScript?

Mary-Kate Olsen
Lepaskan: 2024-11-14 16:36:02
asal
813 orang telah melayarinya

What's the Difference Between `setInterval` and `setTimeout` in JavaScript?

Perbezaan antara 'setInterval' dan 'setTimeout' dalam JavaScript

Dalam JavaScript, mengurus operasi tak segerak adalah penting dan dua fungsi utama yang memudahkan ini adalah 'setInterval' dan 'setTimeout'. Memahami perbezaan mereka adalah penting untuk pengekodan yang berkesan.

'setTimeout' vs 'setInterval':

setTimeout:

  • Melaksanakan fungsi sekali selepas kelewatan yang ditentukan (masa tamat).
  • Sintaks: setTimeout(ungkapan, tamat masa)
  • Contoh: setTimeout(function() { alert("Hello World!") ; }, 1000); // Makluman "Hello World!" dalam satu saat.

setInterval:

  • Melaksanakan fungsi berulang kali pada selang waktu tertentu (masa tamat).
  • Sintaks: setInterval (ungkapan, tamat masa)
  • Contoh: setInterval(function() { console.log("Running Every Second"); }, 1000); // Log mesej setiap saat.

Perbezaan Utama:

  • Kekerapan Pelaksanaan: setTimeout dilaksanakan sekali, manakala setInterval dilaksanakan berulang kali.
  • Tujuan: setTimeout digunakan untuk tindakan tertunda atau penjadualan, manakala setInterval adalah untuk tugasan berkala atau animasi.
  • Kawalan: setInterval boleh dihentikan dengan memanggil clearInterval(intervalID), manakala setTimeout tidak boleh dihentikan secara eksplisit sebaik sahaja dijadualkan.
  • Panggil Balik: setInterval secara automatik memberikan ID selang kepada panggilan balik, yang boleh digunakan untuk pembatalan. setTimeout tidak memberikan ID selang waktu.

Contoh:

Pertimbangkan dua senario:

  • Memberitahu "Hello World!" sekali selepas 5 saat: Gunakan setTimeout.
  • Log "This is Running" setiap 2 saat: Gunakan setInterval.

Kod:

// Alert after 5 seconds
setTimeout(function() { alert("Hello World!"); }, 5000);

// Log every 2 seconds
var intervalID = setInterval(function() { console.log("This is Running"); }, 2000);

// Stop logging after 10 seconds
setTimeout(function() { clearInterval(intervalID); }, 10000);
Salin selepas log masuk

Atas ialah kandungan terperinci Apakah Perbezaan Antara `setInterval` dan `setTimeout` dalam 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