Skip to content
do- edited this page Sep 22, 2024 · 5 revisions

Horner — класс-наследник Check, вычисляющий контрольную сумму по схеме Горнера.

Применяется для ОГРН и ОГРНИП.

Неочевидный факт: переводить таким способом строку в натуральное число (во всяком случае, средствами node v18.16.0 под Windows 10 на i7-11800H) получается на 9% быстрее, чем применять просто parseInt().

Конструктор

 const c = new Horner (totalLength, checkSumLength)

Смысл параметров такой же, как у одноимённых полей.

Поля

Имя Описание
coefficients Массив коэффициентов
valueLength Количество цифр в коде за вычетом контрольной суммы
checkSumLength Количество цифр в контрольной сумме
totalLength Общее количество цифр в коде (valueLength + checkSumLength)
modulus 10 в степени checkSumLength

Методы

processDigit (pos, digit)

Умножает накопленную сумму на 10 и прибавляет к ней digit.

Clone this wiki locally