Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   склонение по падежам (https://javascript.ru/forum/misc/27155-sklonenie-po-padezham.html)

genius_kld 04.04.2012 11:48

склонение по падежам
 
друзья, со школы не занимался склонениями, а функция простая:
найти падеж для слова "голос" в зависимости от числа:
№ голосов.
подскажите как.

Pavel M. 04.04.2012 15:39

можно так
function n2w(n, w) {
  n %= 100;
  if (n > 19) { n %= 10; }
  
  switch (n) {
    case 1:
      return w[0];
      
    case 2:
    case 3: 
    case 4:
      return w[1];
      
    default:
      return w[2];
  }
}
  
var gol = ['голос', 'голоса', 'голосов'],
    out = [];
  
for (var i = 1; i < 26; i += 1) {
  out.push(i + ' ' + n2w(i, gol));
}  

alert(out.join('\n'));


Часовой пояс GMT +3, время: 22:18.