Однажды возникла задачка выводить правильно количество, допустим, товаров. Правильно - это значит не "количество товаров: N", а "N товаров". То есть стало нужно написать фукнцию, которая в зависимости от числа N выдает правильную форму слова "товар".
На выходе получилась простенькая функция на javascript-е, которую я и сохраняю для упрощения дальнейшего воспроизведения, а так же предалагаю вашему вниманию:
function plural_word (n) {
if (n%100 > 10 && n%100 < 20) return 'товаров';
switch (n % 10) {
case 1:return 'товар';
case 2:return 'товара';
case 3:return 'товара';
case 4:return 'товара';
default:return 'товаров';
}
}
Смысл предельно прост - в зависимости от остатка деления на 10 выдаем правильную форму слова, за исключением чисел, оканчивающихся на 11 .. 19.
Первое условие получилось немного сложным в связи с отказом javascript-а обрабатывать 20 > n%100 > 10
Комментарии
Отправить комментарий