如何避免对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条经验 获得超7个赞
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
提交
取消