JavaScript setTimeout() — виконати код із затримкою


Метод setTimeout() виконує функцію один раз через заданий час у мілісекундах.

автор: NagarD

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

Затримка тут — це мінімум, а не обіцянка. setTimeout(fn, 100) означає «не раніше, ніж за 100 мс»: якщо в цю мить головний потік зайнятий важким циклом, функція почекає, доки він звільниться.

Повертає числовий ідентифікатор — його треба зберегти, якщо колись захочеш скасувати виклик через clearTimeout().

Навіть setTimeout(fn, 0) не виконується миттєво: він відкладає функцію до кінця поточної роботи. Цим інколи користуються, щоб дати браузеру перемалювати сторінку перед важкою операцією.

автор: NagarD

Нотатка

Усередині звичайної функції-обробника this не той, на що ти чекаєш — у нестрогому режимі це window. Стрілкова функція цю пастку знімає: вона this не має власного взагалі.

автор: NagarD

Переглядачі

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

Приклади

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

Затримка, скасування й типова пастка з this.

// зберігаємо id, щоб мати змогу скасувати
const id = setTimeout(() => {
    console.log('Минула секунда');
}, 1000);

// передумали
clearTimeout(id);

// аргументи — третім і далі
setTimeout((name) => console.log('Привіт,', name), 500, 'Іване');

// затримка — це МІНІМУМ: цикл нижче відсуне виклик
setTimeout(() => console.log('другий'), 0);
console.log('перший'); // виведеться раніше
автор: NagarD

Коментарі

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

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

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

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

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

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

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

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

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

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

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