You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
OKPO — класс-наследник ScalarProduct с фиксированным набором коэффициентов и некоторыми переопределёнными методами.
Конструктор
constc=newOKPO(valueLength)
Поля
Имя
Описание
coefficients
Массив коэффициентов
valueLength
Длина массива коэффициентов
checkSumLength
Количество цифр в контрольной сумме (1)
totalLength
Общее количество цифр в коде (valueLength + 1)
modulus1
11
modulus2
10
scalarProduct2
Резервный ScalarProduct на случай this.sum % 11 === 10
Методы
adjustSum (str)
Рассчитывает this.sum с резервным набором коэффициентов: 3, 4, 5... вместо основного 1, 2, 3...
verify (str)
Поскольку коды ОКПО принято печатать без лидирующих нулей, дополняет str нулями до totalLength, после чего вызывает унаследованный метод.
random (options)
Поскольку коды ОКПО принято печатать без лидирующих нулей, то при генерации значения, начинающегося на единственный '0' — удаляет его. Значения с лидирующими '00' не выдаёт, в этом случае генерирует значение повторно.