Страницы

Поиск по вопросам

понедельник, 9 декабря 2019 г.

Дописывать приставку к возрасту

#javascript #html #css


Есть такой код, который считает возраст:

var today = new Date();
var yyyy = today.getFullYear();
var Name = question2[1].FIO + '(' + (yyyy - question2[1].Age)+')';


Но вот в чем задачка, нужно дописывать, лет, год и т.д

Как это реализовать?
    


Ответы

Ответ 1



Смотрим по предпоследней цифре: если 1 - лет иначе по последней цифре: 1 - год, 2-4 года, остальное - лет. var years = [ 1822,1922,1948,1990,1995,1996,2008,2014,2016 ] years.forEach(function(year){ let thisYear = new Date().getFullYear(); let yearsOld = thisYear - year; document.write(yearsOld + " " + getYearAddition(yearsOld) + "
"); }); function getYearAddition(year) { let preLastDigit = Math.floor(year % 100 / 10); if (preLastDigit === 1) { return "лет"; } let lastDigit = year % 10; switch (lastDigit) { case 1: return "год"; case 2: case 3: case 4: return "года"; default: return "лет"; } }

Ответ 2



Решение с moment.js Durations и i18n var years = [ 1822,1922,1948,1990,1995,1996,2008,2014,2016 ] years.forEach(function(year){ let yearsOld = moment().diff(moment([year]), 'year'); let yearsOldHumanized = moment.duration(yearsOld, 'years').humanize(); document.write(yearsOldHumanized + "
"); });

Комментариев нет:

Отправить комментарий