Skip to content
do- edited this page Sep 18, 2024 · 38 revisions

ru-codes - один из модулей node.js для проверки корректности ввода ИНН, КПП, ОГРН[ИП] и СНИЛС, а также для генерации таких кодов в автоматических тестах.

Установка

npm install ru-codes

API

Код Функция проверки Генератор Реализация
ИНН физического лица isINN12 (str) randomINN12 () ScalarProduct
ИНН юридического лица isINN10 (str) randomINN10 () ScalarProduct
КПП isKPP (str) randomKPP () Check
ОГРН isOGRN13 (str) randomOGRN13 () Horner
ОГРНИП isOGRN15 (str) randomOGRN15 () Horner
СНИЛС isSNILS (str) randomSNILS ({format?}) SNILS

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

const {isSNILS, randomINN12, /*...*/} = require ('ru-codes')

const testINN12 = randomINN12 ()

try {
  isSNILS (s)
}
catch (err) {
  switch (err.code) {
    case 'type':
      // err.type -- это typeof аргумента, оказавшийся не string
    case 'length':
      // err.tobe -- требуемая длина строки
      // err.asis -- реальная длина строки
    case 'char':
      // err.value -- символ не попавший в интервал '0'..'9'
      // err.pos -- позиция этого символа (от 0)
    case 'format':
      // err.pos -- позиция проблемного символа (для формата СНИЛС)
    case 'checksum': 
      // err.tobe -- контрольная сумма, вычисленная по основной части строки
      // err.asis -- значение контрольной суммы, прочитанное непосредственно из строки
    default:
      throw err
  }
}
Clone this wiki locally