# Метод setInterval

Метод `setInterval` устанавливает интервал выполнение коллбэка в миллисекундах. В первом параметре метода указываем коллбэк, во втором параметре - время задержки его выполнения в миллисекундах. В третьем необязательном параметре можно передать значения для параметров коллбэка. Необходимо применить метод `clearInterval`, чтобы коллбэк не выполнялся бесконечно.

## Синтаксис

`setInterval(коллбэк, время задержки, [параметры коллбэка]);`

## Пример

Давайте с помощью метода `setInterval` установим выполнение коллбэка с задержкой `1000` миллисекунд:

`let i = 0; let timer = setInterval(function() { if (i >= 5) { clearInterval(timer); } else { console.log(++i); } }, 1000);`

## Пример

А теперь давайте установим выполнение коллбэка с задержкой `1000` миллисекунд через промис:

`let i = 0; for await (let el of setInterval(1000, i)) { console.log(i++); if (i >= 5) break; } console.log(i++);`

## Пример

Давайте установим выполнение коллбэка, у которого в параметрах задано два числа `2` и `3`. Пусть сумма данных чисел выводится только три раза:

`let i = 0; let timer = setInterval( (num1, num2) => { console.log(`The sum of ${num1} and ${num2} is ${num1 + num2}`); i++; if (i === 3) { clearInterval(timer); } }, 1000, 2, 3);`

## Смотрите также

- метод `setImmediate`,
  который устанавливает немедленное выполнение коллбэка
- метод `clearInterval`,
  который отменяет выполнение коллбэка

← →
↑