解决小数间运算误差的问题
2019-10-17 本文已影响0人
zkzhengmeng
此方法是小数之间减法运算(可更换运算符) 运算结果保留2位小数且不四舍五入
例如: 2.4566 则取2.45
addNum (num1, num2,num3) {
let sq1, sq2,sq3, multiple;
try {
sq1 = num1.toString().split(".")[1].length;
}
catch (e) {
sq1 = 0;
}
try {
sq2 = num2.toString().split(".")[1].length;
}
catch (e) {
sq2 = 0;
}
try {
sq3 = num3.toString().split(".")[1].length;
}
catch (e) {
sq3 = 0;
}
multiple = Math.pow(10, Math.max(sq1, sq2,sq3) + 1);
return Math.floor(parseFloat((num1 * multiple - num2 * multiple -num3 * multiple) / multiple)*100)/100;
},
//使用方式 addNum(5.88 , 3.33 , 2.22)