JavaScript clearTimeout() — скасувати відкладений виклик


Метод clearTimeout() скасовує виклик, запланований через setTimeout() — за його ідентифікатором.

автор: NagarD

Загальний опис

На ньому побудований debounce — прийом, без якого не обходиться жоден пошук із підказками: на кожне натискання клавіші скасовуємо попередній відкладений запит і плануємо новий. Запит піде лише тоді, коли людина перестане друкувати.

Скасувати неіснуючий чи вже виконаний виклик безпечно — помилки не буде, просто нічого не станеться.

автор: NagarD

Порада

Не забувай скасовувати таймери, коли компонент зникає зі сторінки: інакше функція виконається вже після того, як елементів, з якими вона працює, не існує.

автор: NagarD

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE Microsoft Internet Explorer
clearTimeout 1+ 1+ 1+ 3+ 12+ 5+
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Google Chrome Mobile Mozilla Firefox Mobile Apple Safari
clearTimeout yes yes yes yes

Приклади

+ запропонувати свій приклад у пісочниці

Debounce: запит іде, лише коли людина перестала друкувати.

HTML

<input id="search" placeholder="Пошук">

JS

let timer;

document.getElementById('search').addEventListener('input', event => {
    // скасовуємо попередній відкладений запит
    clearTimeout(timer);

    timer = setTimeout(() => {
        console.log('Шукаємо:', event.target.value);
    }, 300);
});
автор: NagarD

Коментарі

Коментарів ще немає — будьте першим!

Відповідь для

Увійдіть — коментар з'явиться одразу, без капчі й очікування перевірки.

Пропозиція правки

Ваша версія — : після перевірки замінить чинну. Нова порада чи нотатка — з'явиться на сторінці після перевірки.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія секції «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія опису «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Зворотний зв'язок
Вхід