I would like to use setInterval to increase a number by 0.1/s, and I would also like to apply this function multiple times to the number (click once, +0.1/s, click twice, +0.2/s, etc). However, when I execute the function, the number would increase to something like 3.00000001 instead of 3, or 7.999999999 instead of 8. How do I fix this?
let btn = document.querySelector(".button");
let num = document.getElementById("number");
let increment = 0;
function toAdd() {
setInterval(() => {
num.innerHTML = parseFloat(num.innerHTML) + increment;
}, 1000)
}
btn.addEventListener("click", toAdd, increment += 0.1);
<span id="number">0</span>
<button class="button">Click to Add</button>