Таймер с изменение слов
Есть таймер, нужно сделать так, чтобы слова тоже менялись. Например: 1 день-2 дня-5 дней, 1 час-2 часа-5 часов и т.д.
<p id="demo"></p>
<script>
var countDownDate = new Date(2020, 9, 10, 2, 0, 0, 0).getTime();
var x = setInterval(function()
{
var now = new Date().getTime();
var distance = countDownDate - now;
var days = Math.floor(distance / (1000 * 60 * 60 * 24));
var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
var seconds = Math.floor((distance % (1000 * 60)) / 1000);
document.getElementById("demo").innerHTML = days + " дней " + hours + " часов "
+ minutes + " минут " + seconds + " секунд ";
if (distance < 0) {
clearInterval(x);
document.getElementById("demo").innerHTML = "Время истекло";
}
}, 1000);
Ответы (1 шт):
Автор решения: Zhihar
→ Ссылка
т.е. нужна такая вещь?
function declensions(value, variants) {
if (((value % 100 >= 5) && (value % 100 <= 20)) || (value % 10 == 0))
return variants[2];
if (value % 10 == 1)
return variants[0];
return (value % 10 >= 5) ? variants[2] : variants[1];
}
console.log(declensions(0, ["день", "дня", "дней"]));