Hàm setInterval
được sử dụng để thực hiện một hành động lặp đi lặp lại sau một khoảng thời gian xác định. Điều này rất hữu ích khi bạn muốn thực hiện một tác vụ định kỳ trong ứng dụng của mình.
Cú pháp của hàm setInterval
như sau:
setInterval(function, milliseconds, param1, param2, ...)
Trong đó:
function
: Một hàm hoặc một biểu thức được thực thi sau mỗi khoảng thời gian.milliseconds
: Số milliseconds (1000 milliseconds = 1 giây) để chờ trước khi thực hiện hành động lặp lại.param1, param2, ...
: Các tham số tùy chọn cho hàm được gọi.
Hãy xem một ví dụ đơn giản để hiểu rõ hơn về cách sử dụng setInterval
trong JavaScript:
function printTime() {
var date = new Date();
console.log("Bây giờ là: " + date.toLocaleTimeString());
}
setInterval(printTime, 1000);
Trong ví dụ trên, chúng ta khai báo một hàm printTime
để in ra màn hình thời gian hiện tại. Hàm này sử dụng đối tượng Date
để lấy thời gian và sau đó in ra thông báo “Bây giờ là: “ cộng với thời gian hiện tại dưới dạng chuỗi. Bằng cách sử dụng setInterval
với thời gian chờ là 1000 milliseconds (tương đương 1 giây), hàm printTime
sẽ được gọi liên tục sau mỗi giây và thời gian hiện tại sẽ được in ra trên console.
Tương tự như setTimeout
, bạn cũng có thể sử dụng các tham số trong hàm được gọi bởi setInterval
. Dưới đây là một ví dụ:
var count = 0;
function incrementCount() {
count++;
console.log("Số lần tăng: " + count);
}
setInterval(incrementCount, 2000);
Trong ví dụ này, chúng ta khai báo một biến count
và một hàm incrementCount
để tăng giá trị của biến này sau mỗi lần gọi. Hàm incrementCount
sẽ in ra số lần tăng trên console. Bằng cách sử dụng setInterval
với thời gian chờ là 2000 milliseconds (tương đương 2 giây), hàm incrementCount
sẽ được gọi liên tục sau mỗi 2 giây và giá trị của biến count
sẽ tăng lên và được in ra trên console.
Để dừng việc lặp lại của setInterval
, bạn có thể sử dụng hàm clearInterval
. Dưới đây là một ví dụ:
var count = 0;
function incrementCount() {
count++;
console.log("Số lần tăng: " + count);
if (count === 5) {
clearInterval(intervalId);
}
}
var intervalId = setInterval(incrementCount, 1000);
Trong ví dụ này, chúng ta sử dụng biến intervalId
để lưu trữ ID của interval đã được tạo bằng cách sử dụng setInterval
. Trong hàm incrementCount
, chúng ta kiểm tra nếu giá trị của biến count
đạt đến 5, chúng ta gọi hàm clearInterval
và truyền vào ID của interval để dừng việc lặp lại.