Spec-Zone.ru › JavaScript

RangeError: основание системы счисления должно быть целым числом

Исключение JavaScript "radix must be an integer at least 2 and no greater than 36" возникает, когда был указан необязательный параметр radix метода Number.prototype.toString() или BigInt.prototype.toString(), и его значение не находится в диапазоне от 2 до 36.

Сообщение

RangeError: toString() radix argument must be between 2 and 36 (V8-based & Safari)
RangeError: radix must be an integer at least 2 and no greater than 36 (Firefox)

Тип ошибки

RangeError

Что пошло не так?

Был указан необязательный параметр radix метода Number.prototype.toString() или BigInt.prototype.toString(). Его значение должно быть целым числом (числом) от 2 до 36, указывающим основание системы счисления, которое будет использоваться для представления числовых значений. Например, десятичное число 169 (основание 10) в шестнадцатеричной системе счисления (основание 16) представляется как A9.

Почему значение этого параметра ограничено 36? Основание системы счисления больше 10 использует алфавитные символы в качестве цифр; следовательно, основание не может быть больше 36, поскольку латинский алфавит (используемый в английском и многих других языках) содержит всего 26 символов.

Наиболее распространённые основания:

  • 2 для двоичных чисел,
  • 8 для восьмеричных чисел,
  • 10 для десятичных чисел,
  • 16 для шестнадцатеричных чисел.

Примеры

Некорректные случаи

(42).toString(0);
(42).toString(1);
(42).toString(37);
(42).toString(150);
// You cannot use a string like this for formatting:
(12071989).toString("MM-dd-yyyy");

Корректные случаи

(42).toString(2); // "101010" (binary)
(13).toString(8); // "15" (octal)
(0x42).toString(10); // "66" (decimal)
(100000).toString(16); // "186a0" (hexadecimal)

Смотрите также

  • Number.prototype.toString()
  • BigInt.prototype.toString()

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Errors/Bad_radix

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API