Функція setTimeout() у JavaScript, використовується для додавання затримки, або планування виконання певної функції через заданий проміжок часу.

Синтаксис функції setTimeout():

setTimeout(function, delay, arg1, arg2, ...);

  • function: функція котра виконується через вказаний проміжок часу
  • delay: час затримки, виражається в мілісекундах
  • arg1, arg2: при потребі можна використовувати необов’язкові параметри

Приклад:

function greet() {
  console.log('Hello, world.');
}

setTimeout(greet, 3000);
console.log('This message is shown first.');

// This message is shown first.
// Hello, world.

У вищенаведеній програмі, функція setTimeout() викликає функцію greet() через 3 секунди.

Функція setTimeout() може бути корисною, коли є потреба виконати блок коду один раз через заданий час (наприклад відобразити повідомлення користувачу).

Скасування функції setTimeout()

JavaScript також надає функцію clearTimeout(), для скасування запланованої дії тайм-аутом до того, як вона буде виконана.

Синтаксис функції clearTimeout():

clearTimeout(intervalID);

intervalID – це значення (ідентифікатор), що повертається функцією setTimeout().

Приклад застосування функції clearTimeout():

let count = 0;

function increaseCount() {
  count += 1;
  console.log(count);
}

const id = setTimeout(increaseCount, 3000);

clearTimeout(id);
console.log('setTimeout is stopped');
console.log('count:', count);

// setTimeout is stopped
// count: 0

У вищенаведеній програмі, функція setTimeout() використовується для збільшення значення count через 3 секунди. Однак функція clearTimeout(), скасовує виклик setTimeout(), а отже значення count не збільшується.

Додаткові аргументи setTimeout()

До функції setTimeout() можна також передавати додаткові аргументи, котрі далі передаються функції, котру setTimeout() також приймає в якості аргумента.

Приклад:

function greet(name) {
  console.log(`Hello, ${name}.`);
}

setTimeout(greet, 1000, 'John');

// Hello, John.


Мітки: