console
function animateNumber(s, e, callback) {
const count = 10;
if (s === e) {
callback(e);
return;
}
let i = s;
let min = Math.min(s, e);
let max = Math.max(s, e);
let incr = Math.round((e - s) / count);
let timer = setInterval(() => {
i += incr;
if (i <= min || i >= max) {
clearInterval(timer);
i = e;
}
callback(i);
}, 1000 / count);
}
function animateNumber2(s, e, callback) {
const ss = s.toString()
const ee = e.toString()
const sarr = []
const earr = []
for (let i in ss) {
sarr.push(parseInt(ss[i]))
}
for (let i in ee) {
earr.push(parseInt(ee[i]))
}
console.log(sarr, earr)
}
// animateNumber(12, 223, (n) => {
// console.log(n)
// document.getElementById('num').innerText = n
// })
animateNumber(223, 21326, (n) => {
console.log(n)
document.getElementById('num').innerText = n
})
<html>
<head></head>
<body>
<div class="num" id="num">1</div>
</body>
</html>
.num {
font-size: 20px;
}