zobacz system liczbowe
https://pl.wikipedia.org/wiki/System_liczbowy
"If the radix value (coerced if necessary) is not in range [2, 36] (inclusive) parseInt returns NaN."
radix to podstawa (systemu liczbowego), czyli chodzi o tę drugą liczbę.
Zresztą zobacz. To są cyfry układy dziesiątkowego (którego wszyscy używamy)
0 1 2 3 4 5 6 7 8 9
Tak jak w systemie trójkowym nie ma cyfry "trzy", tak jak w dziesiątkowym nie ma cyfry "dziesięć", dlatego że nie ma takiej potrzeby, bo jak czegoś jest dziesięć to wchodzi w kolejną potęgę dziesiątki, więc dziesięć to nie A
tylko 10
.
to jest przykładowa liczba
2137
co ona oznacza tak naprawdę?
otóż kolejne cyfry "mają tyle zer" ile wynika z ich pozycji:
2000 + 100 + 30 + 7
7 jest na pozycji zerowej, więc nie ma zer
3 jest na pozycji pierwszej, więc ma jedno zero
1 jest na pozycji drugiej, więc ma dwa zera
2 jest na pozycji trzeciej, więc ma trzy zera
tyle, że "manie zer" to takie dość potoczne określenie. W rzeczywistości chodzi o potęgi dziesiątki:
1000 to 10 do potęgi 3
100 to 10 do potęgi 2
10 to 10 do potęgi 1
1 to 10 do potęgi 0
itp.
2137
to inaczej
2 * 103 + 1 * 102 + 3 * 101 + 7 * 10 0
I analogicznie się robi w innych systemach liczbowych (tylko do systemów, gdzie podstawa jest większa od 10, dodano litery jako dodatkowe brakujące cyfry)
dlatego system jedynkowy nie miałby sensu praktycznego, bo 1 do potęgi którejkolwiek to dalej 1. No chyba że tak jak @Riddle napisał Noo, teoretycznie żeby przedstawić coś w systemie jedynkowym, to musiałbyś napisać tyle cyfr ile wynosi liczba, np 4 w systemie jedynkowym to musiałyby być 4 takie same znaki
, ale z dokumentacji JS widać, że postanowiono nie iść tą ścieżką.