Potrzebuję uzyskać wartość bardzo dużej liczby w JavaScript w formie nie-wykładniczej. Number.toFixed
po prostu zwraca go w formie wykładniczej jako ciąg, który jest gorszy niż to, co miałem.Przeciwny do Number.toExponential w JS
To co Number.toFixed
powraca:
>>> x = 1e+31
1e+31
>>> x.toFixed()
"1e+31"
Number.toPrecision
też nie działa:
>>> x = 1e+31
1e+31
>>> x.toPrecision(21)
"9.99999999999999963590e+30"
Chciałbym to:
>>> x = 1e+31
1e+31
>>> x.toNotExponential()
"10000000000000000000000000000000"
Mógłbym napisać własny parser ale Wolałbym użyć natywnej metody JS, jeśli taka istnieje.
Dawno już zapomniałem, co zrobiłem, aby to rozwiązać, ale masz rację, że nie ma wbudowanej metody, aby to zrobić. –
@Oz Hej dzięki, w końcu mogę komentować pytania! To wielki problem z wbudowanymi metodami drukowania, coś takiego jak "printf" z pewnością byłoby miłe. Pracuję teraz nad niestandardową klasą NumberFormatter. –