Встречается на собеседованиях • сегодня

Какой алгоритм реализации таймера

Для реализации таймера в JavaScript можно использовать setInterval или рекурсивный setTimeout. Лучше использовать requestAnimationFrame для анимаций, но для простого таймера подойдет setInterval.

Пример с setInterval:

javascript
let seconds = 0;
const timerElement = document.getElementById('timer');

const timer = setInterval(() => {
seconds++;
timerElement.textContent = Прошло ${seconds} секунд;
if (seconds >= 10) clearInterval(timer);
}, 1000);

text

Важные моменты:
1. Всегда очищайте таймер через `clearInterval`/`clearTimeout`
2. Для точности учитывайте дрифт (накопление ошибок времени)
3. В React используйте `useEffect` с cleanup

Для более точного таймера можно вычислять разницу между Date.now():
```javascript
const start = Date.now();
setInterval(() => {
  const elapsed = Math.floor((Date.now() - start) / 1000);
  timerElement.textContent = `Прошло ${elapsed} секунд`;
}, 1000);
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы