web-utils-super
Version:
前端函数库
25 lines (22 loc) • 655 B
JavaScript
/**
* @desc: 加法运算,避免数据相加小数点后产生多位数和计算精度损失
* @param {Number} augend 相加的第一个数
* @param {Number} addend 相加的第二个数
* @return {Number} 总和
*/
function add(augend, addend) {
var baseNum, baseNum1, baseNum2
try {
baseNum1 = augend.toString().split('.')[1].length
} catch (e) {
baseNum1 = 0
}
try {
baseNum2 = addend.toString().split('.')[1].length
} catch (e) {
baseNum2 = 0
}
baseNum = Math.pow(10, Math.max(baseNum1, baseNum2))
return Number((augend * baseNum + addend * baseNum) / baseNum)
}
module.exports = add