Skip to content

Repository files navigation

decliner.js

Мини-библиотека для склонения исчисляемых русских слов

decliner logo

Установка

NPM:

npm i decliner

Yarn

yarn add decliner

Использование

Импортируйте класс Decliner из пакета в нужный файл.

importDeclinerfrom'decliner'

Конструктор класса принимает два параметра:

  1. Массив склоняемых слов в формате
['рубль','рубля','рублей']
  1. Объект с настройками
{format: '{{num}} {{value}}'}

Примеры использования:

constdecliner=newDecliner(['рубль','рубля','рублей']);decliner.decline(1);// "рубль"decliner.decline(2);// "рубля"decliner.decline(5);// "рублей"
constdecliner=newDecliner(['рубль','рубля','рублей'],{format: '{{num}} {{value}}'});decliner.decline(1);// "1 рубль"decliner.decline(2);// "2 рубля"decliner.decline(5);// "5 рублей"

Настройки:

format

Строка, форматирующая возвращаемый методом decline результат, подстроки {{num}} и {{value}} заменяются на число и значение соответственно

format: '{{num}} {{value}}'

Методы

setOptions

Принимает объект, изменяющий настройки и возвращает текущий экземпляр класса.

constdecliner=newDecliner(array,{format: '{{num}} {{value}}'});decliner.setOptions({format: '{{value}} {{num}}'});

decline

Принимает число, по которому необходимо склонить слово из массива. Если форматирование не задано, то возвращает только слово из массива.

constdecliner=newDecliner(['рубль','рубля','рублей']);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

Написать issue

About

Decline russian words with Decliner

Topics

Resources

Stars

37 stars

Watchers

5 watching

Forks

Releases

Packages

Used by

Contributors

Languages