Періодичні виконання

setTimeout (встановлення таймеру)

setTimeout (nameFunction, 1000) - викликає указанную функуию один раз через 1000мс

const timerId = setTimeout(callback, delay, arg1, arg2, ...);

callback — функція, виклик якої необхідно запланувати

delay — час у мілісекундах, через який callback-функція буде викликана один раз

arg1, arg2 тощо) не обов’язкові і будуть передані callback функції під час виклику.

Результатом виклику setTimout() буде цифровий ідентифікатор створеного таймера, який потім може бути використаним для його подальшого скасування.

const button = document.querySelector("button");
const onClick = () => {
const timerId = setTimeout(() => {
console.log("I love async JS!");
}, 2000);
console.log(timerId);
};
button.addEventListener("click", onClick);

clearTimeout (скачування таймеру)

clearTimeout(id) - приймає ідентифікатор таймера та “очищає його”, тобто видаляє реєстрацію відкладеного виклику функції з черги.

const greet = () => {
console.log("Hello!");
};
const timerId = setTimeout(greet, 3000);
clearTimeout(timerId);

setInterval (встановлення інтервалу)

setInterval() — це простий спосіб повторення коду знову і знову з певним інтервалом.

const intervalId = setInterval(callback, delay, arg1, arg2, ...);

const startBtn = document.querySelector(".js-start");
startBtn.addEventListener("click", () => {
const intervalId = setInterval(() => {
console.log(`Interval ID: ${intervalId}, ${Math.random()}`);
}, 1000);
});