JavaScript · Middle · Запитання 25 з 75
Чому рекурсивний setTimeout іноді кращий за setInterval?
- ✓Правильна відповідь: Він гарантує паузу між завершенням одного запуску й початком наступного
- 2Він виконується в окремому потоці й не блокує інтерфейс
- 3Він не залежить від event loop і завжди спрацьовує точно вчасно
Пояснення
setInterval ставить запуски за розкладом: якщо задача (наприклад, запит) триває довше за інтервал, виклики накладаються. Рекурсивний setTimeout планує наступний запуск після завершення поточного й дає змогу змінювати затримку. Обидва таймери неточні й залежать від завантаження потоку.