works:programmer:js:rus-ago-number-suffixes
Правильный генератор суффиксов для rusNumberAgo
Писал для себя получился очень работоспособный вариант.
function rusNumberMutal(value, once, twice, more) { const mod10 = value % 10, mod100 = value % 100; switch (true) { case mod100 == 11 || mod100 == 12 || mod100 == 13 || mod100 == 14 : return [value, more]; case mod10 == 1 : return [value, once]; case mod10 == 2 || mod10 == 3 || mod10 == 4: return [value, twice]; default: return [value, more]; } }
Тестовая строка в виде пирогов `1002 пирога`
Array(1200).fill(null) .map((_,x) => rusNumberMutal(x, "пирог", "пирога", "пирогов")) .forEach(res => console.log(res.join(" ")));
works/programmer/js/rus-ago-number-suffixes.txt · Последнее изменение: 2022/10/19 11:49 — 127.0.0.1