如何在js中获得小数的精度?

时间:2011-02-11 07:29:37

标签: javascript

这可能是一个非常容易解决的问题,但我现在想不出一个优雅的解决方案。

鉴于以下数字,我如何找到每个数字的精度(.0001)。

126.01
1.3450

更新: 小数点后的位数。

前两位数字的输出为。

.01
.0001

2 个答案:

答案 0 :(得分:4)

你做不到。所有Number都具有标准的JavaScript精度。

如果您有"126.01""1.3450"(即String s),那么您可以执行以下操作:

console.log("The precision of " + str_number + " is " + str_number.split('.')[1].length + " decimal places");

如果您想要有效数字,请使用0

答案 1 :(得分:0)

也许尝试构建一个简单的函数,如:

function acc(num) {
  var splt = num.toString().replace(/\.|$/, '.').split('.');
  return splt[1].length
    ? 1 / Math.pow(10, splt[1].length)
    : Math.pow(10, /0*$/.exec(splt[0])[0].length);
}