Skip to content

Instantly share code, notes, and snippets.

@aalexeev239
Created August 30, 2015 17:47
Show Gist options
  • Save aalexeev239/c4f742933b7b68a34abb to your computer and use it in GitHub Desktop.
Save aalexeev239/c4f742933b7b68a34abb to your computer and use it in GitHub Desktop.
Pluralize russian nouns
/**
* http://habrahabr.ru/post/105428/
* Функция возвращает окончание для множественного числа слова на основании числа и массива окончаний
* @param iNumber Integer Число на основе которого нужно сформировать окончание
* @param aEndings Array Массив слов или окончаний для чисел (1, 4, 5),
* например ['яблоко', 'яблока', 'яблок']
* @return String
*/
function getNumEnding(iNumber, aEndings)
{
var sEnding, i;
iNumber = iNumber % 100;
if (iNumber>=11 && iNumber<=19) {
sEnding=aEndings[2];
}
else {
i = iNumber % 10;
switch (i)
{
case (1): sEnding = aEndings[0]; break;
case (2):
case (3):
case (4): sEnding = aEndings[1]; break;
default: sEnding = aEndings[2];
}
}
return sEnding;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment