Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Cách xóa (clear) bộ hẹn giờ setInterval() trong JavaScript

setInterval() lặp lại thực thi hàm sau mỗi khoảng thời gian (ms). Trả về ID số nguyên dùng để hủy bằng clearInterval().

Ví dụ: Lặp và hủy

// Tạo interval: alert mỗi 2 giây
var intervalId = setInterval(function() {
  alert('Hello');
}, 2000);

// Hủy sau 10 giây
setTimeout(function() {
  clearInterval(intervalId);
  console.log('Đã dừng interval');
}, 10000);

Lưu ý quan trọng

  • Luôn lưu ID trả về của setInterval() để có thể clearInterval() sau.
  • Trong class/component: lưu ID vào property (this.intervalId) để dọn dẹp khi unmount/destroy.
  • clearInterval() với ID không hợp lệ hoặc đã clear là an toàn (không lỗi).
  • Đối tác: setTimeout() (chạy một lần) ↔ clearTimeout().

Sửa lỗi trong tài liệu gốc

Tài liệu gốc ghi window.setInterval() để clear – sai. Phải dùng window.clearInterval(intervalId) hoặc clearInterval(intervalId).