精度问题
浮点数两数相乘
floatingMultiply(arg1, arg2) {
if (!((arg1 || arg1 === 0) && (arg2 || arg2 === 0))) {
return 0;
}
let m = 0, s1 = arg1.toString(), s2 = arg2.toString();
try {
m += s1.split('.')[1].length;
} catch (e) {
}
try {
m += s2.split('.')[1].length;
} catch (e) {
}
return Number(s1.replace('.', '')) * Number(s2.replace('.', '')) / Math.pow(10, m);
}
浮点数两数相除
floatBeDividedBy(a, b) {
let c, d, e = 0,
f = 0;
try {
e = a.toString().split(".")[1].length;
} catch (g) {
}
try {
f = b.toString().split(".")[1].length;
} catch (g) {
}
return c = Number(a.toString().replace(".", "")), d = Number(b.toString().replace(".", "")), accMul(c / d, Math.pow(10, f - e));
};
将要进行相乘的数据传入即可