- region - https://github.com/hflabs/region
- sklonyator - https://github.com/karl93rus/gorodki
npm install cities-info
const Cities = require('cities-info')
const cities = Cities.getCities()
Данный метод является синхронным и возвращает список всех регионов РФ и все присутствующие поля
- name - Название региона
- type - Тип (АО - автономный округ, г - городб Аобл - автономная область, обл - область и т.д.)
- name_with_type - Канкатенация типа региона и его название
- name_with_type - Канкатенация типа региона и его название
- kladr_id - КЛАДР-код региона
- fias_id - ФИАС-код региона
- okato - ОКАТО-код региона
- oktmo - ОКТМО-код региона
- tax_office - ИФНС-код региона
- postal_code - почтовый индекс региона
- iso_code - ISO-код региона
- iso_code - временная зона региона / часовой пояс
- geoname_code - код региона по GeoNames
- geoname_id - идентификатор региона по GeoNames
- geoname_name - название региона по GeoNames
Если вам не нужен весь список регионов, можно провести фильтрацию, передав первым параметром в метод getCities набор опций:
function getWithFilter (element) { return element.name.includes('Москва') }
const cities = Cities.getCity({ where: getWithFilter })
Если вам не нужны все параметры элемента, то вторым методом можно передать массив с перечисленными значениями в виде строки:
function getWithFilter (element) { return element.name.includes('Москва') }
const cities = Cities.getCity({ where: getWithFilter }, ['name', 'type', 'name_with_type'])
Так же можно получить название города в предложном падеже:
function getWithFilter (element) { return element.name.includes('Москва') }
const cities = Cities.getCity({ where: getWithFilter, sklonyator: true })
В таком случае в объект добавятся два новых параметра: sklon и sklonGeo для русского и английского языка
В случае, если вам нет необходимости использовать массив регионов, вы можете использовать метод sklon
const cities = Cities.sklon('Смоленск')
console.log(cities) // Смоленске