我试图找到一种方法来更精确地舍入数字数组的总和。
例如给出一个[33.3333 , 33.3333, 33.3333]
数组的总和是99.99,在这种情况下,我不想将总和舍入为100。
但是如果数字数组是Math.round()
那么它应该将总和舍入为100。
即使你有一个[33.22,33.33,33.33]
32-bit
总是四舍五入为100
答案 0 :(得分:3)
您可以在舍入之前相乘以获得不同的精度:
cd ${path}sample && ls -lrt
答案 1 :(得分:2)
对数字进行四舍五入的更好解决方案是演示here
function precisionRound(number, precision) {
var factor = Math.pow(10, precision);
return Math.round(number * factor) / factor;
}
console.log(precisionRound(99.99, 2)); //99.99
console.log(precisionRound(99.9999, 2)); //100