setInterval

Để tự động thực thi hàm theo chu kỳ thời gian duration, ta có thể sử dụng hàm setInterval với cú pháp:

setInterval(callback, duration)

Đối số đầu tiên là một callback, đối số thứ hai là khoảng thời gian lặp lại callback.

Ví dụ, ta viết đoạn code nhắc nhở tập trung như sau:

const counter = () => {
  console.log("Focus on your work")
}
 
setInterval(counter, 1000)

Dòng chữ “Focus on your work” sẽ xuất hiện một giây (1000ms = 1s) một lần trên console.

setTimeout

Để tự động gọi hàm sau khi delay một quãng thời gian delay, ta sử dụng hàm setTimeout có cú pháp:

setTimeout(callback, delay)

Cũng với ví dụ trên, nhưng đổi thời gian delay thành hai giây:

const counter = () => {
  console.log("Focus on your work")
}
 
setTimeout(counter, 2000)

Chỉ có một dòng chữ “Focus on your work” xuất hiện sau khi hai giây trôi qua kể từ khi chạy dòng lệnh.

Callback Argument

Các đối số từ đối số thứ ba trở đi sẽ được dùng làm đối số truyền vào cho callback.

Ví dụ:

const counter = (name) => {
  console.log(`${name}! Focus on your work`)
}
 
setTimeout(counter, 2000, "Quân")

Kết quả xuất ra sẽ là “Quân! Focus on your work”.