RealAdmin.ru

Склонение числовых значений на javascript

JavaScript
Категория: Кодинг
09 мар 2017 г. в 20:19

Для склонения числовых значений будем использовать небольшую javascript функцию. В качестве аргументов ей передаётся число и массив из форм слова при разных числовых значениях. Результат можно использовать по своему назначению.

    function num2str(n, text_forms) {  
        n = Math.abs(n) % 100; var n1 = n % 10;
        if (n > 10 && n < 20) { return text_forms[2]; }
        if (n1 > 1 && n1 < 5) { return text_forms[1]; }
        if (n1 == 1) { return text_forms[0]; }
        return text_forms[2];
    }

Применяется функция следующим образом:

    $('#p1').html('1 '+num2str(1, ['минута', 'минуты', 'минут']));
    $('#p2').html('2 '+num2str(2, ['минута', 'минуты', 'минут']));
    $('#p3').html('5 '+num2str(5, ['минута', 'минуты', 'минут']));

Результат:

Код последнего примера так же очень прост.

    $('#num').on('change',function(){
        val = num2str($(this).val(), ['год', 'года', 'лет']);
        $('#num-word').text(val);
    });

Таким образом, используя падежи слова можно составлять грамматически верные предложения с использованием числительных переменных.

Теги:
Посмотрите похожее — 6
Комментарии — 0
    © REALADMIN.RU   2017 г.
    Страница сгенерирована: 0,1728 s | 10 mb.
    На каком уровне Вы играете в шахматы?
    О П Р О С
    Home Question Top