Большая строка целого может выйти за диапазон, где ECMAScript Number различает соседние значения. Преобразование через Number способно незаметно изменить число до вывода в другом основании. NumberBase сохраняет разбор, знак, арифметику и результат в целочисленной области.
Проверка завершается до арифметики
Парсер проверяет необязательный знак, непустые цифры, ограничение длины, соответствие символа цифре и условие цифра < основание для всей строки. Суффикс z в decimal делает весь ввод недопустимым. Частичного результата по корректному префиксу, как у parseInt, нет.
Каждое умножение и сложение остаётся точным
Исходное основание и цифры превращаются в BigInt до операции value = value × base + digit. Знак применяется один раз после накопления модуля. Точное целое выводится с radix от 2 до 36, прописными буквенными цифрами и без экспоненты.
Произвольной точности всё равно нужен предел работы
BigInt устраняет переполнение фиксированной разрядности, но не делает бесконечный ввод бесплатным. NumberBase ограничивает строку 4096 цифрами, проверяет её до вывода и выполняет одно линейное накопление. Это граница ресурсов, а не округления: принятые числа остаются точными.