npm i decliner
yarn add decliner
Импортируйте класс Decliner
из пакета в нужный файл.
import Decliner from 'decliner'
Конструктор класса принимает два параметра:
- Массив склоняемых слов в формате
['рубль', 'рубля', 'рублей']
- Объект с настройками
{format: '{{num}} {{value}}'}
Примеры использования:
const decliner = new Decliner(['рубль', 'рубля', 'рублей']);
decliner.decline(1); // "рубль"
decliner.decline(2); // "рубля"
decliner.decline(5); // "рублей"
const decliner = new Decliner(['рубль', 'рубля', 'рублей'], {format: '{{num}} {{value}}'});
decliner.decline(1); // "1 рубль"
decliner.decline(2); // "2 рубля"
decliner.decline(5); // "5 рублей"
Строка, форматирующая возвращаемый методом decline
результат, подстроки {{num}}
и {{value}}
заменяются на число и значение соответственно
format: '{{num}} {{value}}'
Принимает объект, изменяющий настройки и возвращает текущий экземпляр класса.
const decliner = new Decliner(array, {format: '{{num}} {{value}}'});
decliner.setOptions({format: '{{value}} {{num}}'});
Принимает число, по которому необходимо склонить слово из массива. Если форматирование не задано, то возвращает только слово из массива.
const decliner = new Decliner(['рубль', 'рубля', 'рублей']);
decliner.decline(50); // "рублей"
decliner.js умеет работать и с отрицательными значениями:
decliner.decline(-50); // "-50 рублей"
И с вещественными числами:
decliner.decline(125.4); // "125.4 рубля"
Благодарность можно выразить поставив этому репозиторию звезду, а также зайдя в другие репозитории моего аккаунта
Почта: nikita.mihalyov@gmail.com
Telegram: @nmihalyov
ВКонтакте: vk.com
Мой сайт: nmihalyov.tk