Что такое setTimeout и setInterval?
Этот вопрос проверяет понимание таймеров в JavaScript, а именно разницу между выполнением кода через задержку (setTimeout) и периодическим выполнением кода (setInterval).
Короткий ответ
setTimeout выполняет указанную функцию один раз через заданное время, а setInterval — периодически, с указанным интервалом. Оба метода работают асинхронно, что значит, что они не блокируют основной поток выполнения программы. Чтобы остановить выполнение setInterval, нужно вызвать clearInterval, а для остановки отложенного вызова setTimeout — clearTimeout.
Длинный ответ
В JavaScript setTimeout и setInterval — это методы, которые используются для асинхронного выполнения кода через определённое время.
setTimeout выполняет функцию один раз через заданное количество миллисекунд. Например:
setTimeout(() => {
console.log("Привет через 2 секунды!");
}, 2000); // Выполнится через 2 секундыЕсли нужно отменить запланированный вызов, можно использовать clearTimeout:
let timeoutID = setTimeout(() => console.log("Привет"), 2000);
clearTimeout(timeoutID); // Отменяет выполнениеsetInterval вызывает функцию с заданным интервалом времени. Например:
let intervalID = setInterval(() => {
console.log("Повторяющееся сообщение каждые 3 секунды");
}, 3000);Чтобы остановить повторяющийся вызов, нужно вызвать clearInterval:
clearInterval(intervalID);Эти методы важны для выполнения задач с задержкой или повторением, например, для создания таймеров, анимаций или регулярных обновлений данных.