UNPKG

@ssports_fe/ssutils

Version:
17 lines (14 loc) 463 B
/** * @file 解决浮动运算问题,避免小数点后产生多位数和计算精度损失。 * 问题示例:2.3 + 2.4 = 4.699999999999999,1.0 - 0.9 = 0.09999999999999998 * @date 2018-03-01 * @author sunshaocheng */ /** * 精确减法 */ const minus = (num1, num2) => { const baseNum = Math.pow(10, Math.max(digitLength(num1), digitLength(num2))); return (times(num1, baseNum) - times(num2, baseNum)) / baseNum; }; module.exports = minus;