当数字变大时,JavaScript会将大型INT转换为科学记数法.我怎样才能防止这种情况发生?
我需要以非指数形式在JavaScript中获取极大数字的值.Number.toFixed只是以指数形式将其作为字符串返回,这比我的更糟糕.
这是Number.toFixed回报:
>>> x = 1e+31
1e+31
>>> x.toFixed()
"1e+31"
Run Code Online (Sandbox Code Playgroud)
Number.toPrecision 也不起作用:
>>> x = 1e+31
1e+31
>>> x.toPrecision( 21 )
"9.99999999999999963590e+30"
Run Code Online (Sandbox Code Playgroud)
我想要的是:
>>> x = 1e+31
1e+31
>>> x.toNotExponential()
"10000000000000000000000000000000"
Run Code Online (Sandbox Code Playgroud)
我可以编写自己的解析器,但如果存在,我宁愿使用本机JS方法.