Задать вопрос
@LehaRybkoha

Как сделать склонение рандомных чисел на Js?

Допустим есть генерация чисел от 70 до 400, что нужно сделать, чтобы выводило "70 человек" "72 человека" "73 человека" "78 человек" и так далее по аналогии?
  • Вопрос задан
  • 298 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillbox
    JavaScript
    3 месяца
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Решения вопроса 2
@Aves
const source = {one: 'человек', few: 'человека', many: 'человек'};
const pr = new Intl.PluralRules('ru');

for (let i = 70; i<= 400; i++)
  console.log(`${i} ${source[pr.select(i)]}`);
Ответ написан
Комментировать
0xD34F
@0xD34F Куратор тега JavaScript
const declension = forms => val => (
  val = Math.abs(val) % 100,
  forms[
    [ 2, 0, 1, 1, 1, 2 ]
    [+(val < 5 || 19 < val) && Math.min(val % 10, 5)]
  ]
);

const d = declension([ 'час', 'часа', 'часов' ]);

d(0) // 'часов'
d(2) // 'часа'
d(6191) // 'час'
d(-18) // 'часов'
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы