The setInterval() метод в JavaScript се използва за повтаряне на определена функция на всеки даден интервал от време. Той оценява израз или извиква функция на дадени интервали. Този метод продължава извикването на функция, докато прозорецът не бъде затворен или clearInterval() методът се нарича. Този метод връща числова стойност или различно от нула число, което идентифицира създадения таймер.
За разлика от setTimeout() метод, на setInterval() метод извиква функцията многократно. Този метод може да бъде написан със или без прозорец префикс.
Често използваният синтаксис на setInterval() методът е даден по-долу:
Синтаксис
window.setInterval(function, milliseconds);
Стойности на параметрите
Този метод приема две стойности на параметъра функция и милисекунди които се определят по следния начин.
функция: Това е функцията, съдържаща блока от код, който ще бъде изпълнен.
милисекунди: Този параметър представлява дължината на интервала от време между всяко изпълнение. Интервалът е в милисекунди. Той определя колко често ще се изпълнява кодът. Ако стойността му е по-малка от 10, се използва стойността 10.
Как да спрем изпълнението?
Можем да използваме clearInterval() метод за спиране на изпълнението на функцията, посочена в setInterval() метод. Стойността, върната от setInterval() метод може да се използва като аргумент на clearInterval() метод за отмяна на времето за изчакване.
Нека разберем употребата на setInterval() метод, като използвате някои илюстрации.
Пример1
Това е прост пример за използване на setInterval() метод. Тук предупредителен диалогов прозорец се показва на интервал от 3 секунди. Ние не използваме никакъв метод за спиране на изпълнението на функцията, посочена в setInterval() метод. Така че методът продължава изпълнението на функцията, докато прозорецът не бъде затворен.
setInterval() method <h3> This is an example of using the setInterval() method </h3> <p> Here, the background color changes on every 200 milliseconds. </p> Stop var var1 = setInterval(color, 200); function color() { var var2 = document.body; var2.style.backgroundColor = var2.style.backgroundColor == 'lightblue' ? 'lightgreen' : 'lightblue'; } function stop() { clearInterval(var1); }Тествайте сега
Изход
Цветът на фона ще започне да се променя след 200 милисекунди. При щракване върху посочения Спри се бутон, превключването между цветовете ще бъде спряно на съответния цвят на фона. Изходът след щракване върху бутона ще бъде -