如何避免对JavaScript中的大数进行科学表示法?当数字变大时,JavaScript将大int转换为科学表示法。我怎样才能防止这种情况发生?
3 回答
回首忆惘然
TA贡献1847条经验 获得超11个赞
function toFixed(x) {
if (Math.abs(x) < 1.0) {
var e = parseInt(x.toString().split('e-')[1]);
if (e) {
x *= Math.pow(10,e-1);
x = '0.' + (new Array(e)).join('0') + x.toString().substring(2);
}
} else {
var e = parseInt(x.toString().split('+')[1]);
if (e > 20) {
e -= 20;
x /= Math.pow(10,e);
x += (new Array(e+1)).join('0');
}
}
return x;}(new Array(n+1)).join(str)String.prototype.repeat
慕仙森
TA贡献1827条经验 获得超8个赞
Number(1e-7).toFixed(8).replace(/\.?0+$/,"") //0.000
桃花长相依
TA贡献1860条经验 获得超8个赞
const myNumb = 1000000000000000000000;console.log( myNumb ); // 1e+21console.log( myNumb.toLocaleString() );
// "1,000,000,000,000,000,000,000"console.log( myNumb.toLocaleString('fullwide', {useGrouping:false}) ); // "1000000000000000000000"注:
const myNumb = 586084736227728377283728272309128120398;console.log( myNumb.toLocaleString('fullwide', { useGrouping: false }) );586084736227728400000000000000000000000
添加回答
举报
0/150
提交
取消
