padonnak
@padonnak

Как сделать вывод окончания (а,ов)?

Не могу сообразить как вывести правильно:

111 Просмотров
23 Просмотра
1 Просмотр

решил накидать на условии нечетных чисел но получилось не то что хотел.

let local =    {"views":[" просмотр"," просмотра"," просмотров"]}
let Views = (e)=>{
	if(e == 1) return e+local.views[0];
	if (((e >10) ? e[e.length-1] : e) % 2 == 0) {
		return e+local.views[1];
	}
	return e+local.views[2];
};
  • Вопрос задан
  • 261 просмотр
Решения вопроса 3
k12th
@k12th
console.log(`You're pulling my leg, right?`);
const indexes = [2, 0, 1, 1, 1, 2];

    /**
     *
     * @param {number} amount
     * @param {string[]} cases For slavic languages: ['яблоко', 'яблока', 'яблок']
     * @returns {string}
     */
    function pluralize(amount, cases) {
        const mod100 = amount % 100;
        const mod10 = amount % 10;
        const index = (mod100 > 4 && mod100 < 20) ? 2 : indexes[(mod10 < 5) ? mod10 : 5];
        return cases[index];
    }
Ответ написан
Комментировать
Stalker_RED
@Stalker_RED
var pluralize = function(n , forms) {
    n%=100;if(n>10&&n<20)return forms[2];n%=10;return forms[n>1&&n<5?1:n==1?0:2]
};
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы