I am just trying to create a simple counter using setInterval. However, after 5 seconds, the interval slows down to about 1000ms. I'm sure I am just overlooking something silly, but for the life of me I cant see it.
var btn = document.getElementById("btn");
var num = document.getElementById('num');
btn.addEventListener("click", startCounter);
var interval;
function startCounter(){
interval = setInterval(count, 100);
}
var idx = 0;
function count(){
idx++;
console.log(idx);
num.textContent = idx;
if(idx > 100) {
clearInterval(interval);
idx = 0;
}
}
<button id="btn">Click</button>
<div id="num" style="">0</div>