blob: 002078bc54651085e5334c7898ee3ba3032d4df5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
---
title: 'RangeError: radix must be an integer'
slug: Web/JavaScript/Reference/Errors/Bad_radix
tags:
- JavaScript
- RangeError
- Ошибки
translation_of: Web/JavaScript/Reference/Errors/Bad_radix
---
<div>{{jsSidebar("Errors")}}</div>
<h2 id="Сообщение">Сообщение</h2>
<pre class="syntaxbox">RangeError: radix must be an integer at least 2 and no greater than 36 (Firefox)
RangeError: toString() radix argument must be between 2 and 36 (Chrome)
</pre>
<h2 id="Тип_ошибки">Тип ошибки</h2>
<p>{{jsxref("RangeError")}}</p>
<h2 id="Что_пошло_не_так">Что пошло не так?</h2>
<p><span>Метод </span> {{jsxref("Number.prototype.toString()")}} <span>был вызван с дополнительным параметром <code>radix</code>.</span> <span> Его значение должно быть целым числом, принадлежащим промежутку от 2 до 36 и указывающим основание системы счисления, которая должна быть использована для представления численных значений.</span> <span> Например, десятичное (основание 10) число 169 представляется в шестнадцатеричном виде (основание 16) как A9.</span></p>
<p><span>Почему значение этого параметра не может быть больше, чем 36? Для оснований</span><span>, превышающих 10, в качестве цифр используются алфавитные символы;</span> <span> следовательно, основание не может быть больше 36, поскольку в латинском алфавите (используемом английским и многими другими языками) только 26 символов.</span></p>
<p><span>Наиболее распространённые основания систем счисления:</span></p>
<ul>
<li>2 для <a href="https://ru.wikipedia.org/wiki/Двоичная_система_счисления">двоичных чисел</a>,</li>
<li>8 для <a href="https://ru.wikipedia.org/wiki/Восьмеричная_система_счисления">восьмеричных чисел</a>,</li>
<li>10 для <a href="https://ru.wikipedia.org/wiki/Десятичная_система_счисления">десятичных чисел</a>,</li>
<li>16 для <a href="https://ru.wikipedia.org/wiki/Шестнадцатеричная_система_счисления">шестнадцатеричных чисел</a>.</li>
</ul>
<h2 id="Примеры">Примеры</h2>
<h3 class="highlight-spanned" id="Некорректное_применение"><span class="highlight-span"><span>Некорректное применение</span></span></h3>
<pre class="brush: js example-bad">(42).toString(0);
(42).toString(1);
(42).toString(37);
(42).toString(150);
// Нельзя использовать для форматирования строку данного вида:
(12071989).toString('MM-dd-yyyy');
</pre>
<h3 id="Корректное_применение">Корректное применение</h3>
<pre class="brush: js example-good">(42).toString(2); // "101010" (двоичная система)
(13).toString(8); // "15" (восьмеричная)
(0x42).toString(10); // "66" (десятичная)
(100000).toString(16) // "186a0" (шестнадцатеричная)
</pre>
<h2 id="Смотрите_также"><span>Смотрите также</span></h2>
<ul>
<li>{{jsxref("Number.prototype.toString()")}}</li>
</ul>
|