如何正确地舍入JavaScript中的小数值

时间:2014-01-13 08:25:08

标签: javascript

如果我们的值低于值

,如何舍入java脚本中的阶乘值
7.156945704626378 e +118

我只想要7.16 如果我们有任何解决方案,请告诉我?

4 个答案:

答案 0 :(得分:0)

将它放在一个String变量中:

var x = "7.156945704626378e+118";

然后使用常规表达式检查e之前的部分并将其解析回float:

var y = parseFloat(x.match(/\d+[.][0-9]+/)[0]);

通过以下方式舍入到2位小数:

var z = y.toFixed(2);

如果你仍然希望你的e118只是将z乘以1e118那么。

Here is a working fiddle

答案 1 :(得分:0)

答案 2 :(得分:0)

var number=7.1569;
number*=100;
var new_number = Math.round(number);
new_number/=100;

答案 3 :(得分:0)

我不确定这种方法是否正确,但这可以满足用户的需求。

Number((+num.toString().replace(/e.*/, '')).toFixed(2))

<强>样本

var num = 7.156945704626378e+118;
console.log(Number((+num.toString().replace(/e.*/, '')).toFixed(2)));

# 7.16

注意: 这假定指数不重要且mantissa 四舍五入所需的全部数据