首先判断需要计算的数字是否为整数
// 判断一个数字是否为一个整数
export function isInt(num) {
num = Number(num);
return Math.floor(num) === num
}
将一个浮点数转为整数,返回整数和倍数。如3.14 返回314 100
export function toInt(num) {
var ret = { times: 1, num: 0 };
if (isInt(num)) {
ret.num = num;
return ret
}
var str = num + '';
var dotPos = str.indexOf('.');
var len = str.substring(dotPos + 1).length;
ret.times = Math.pow(10, len);;
ret.num = parseInt(num * ret.times + 0.5, 10);
return ret
}
实现假发乘除运算,确保不丢失精度 op运算类型1(add,sub,mul,divide)
// 实现假发乘除运算,确保不丢失精度 op运算类型1(add,sub,mul,divide)
export function operation(a, b, op) {
a = Number(a);
b = Number(b);
var o1 = toInt(a);
var o2 = toInt(b);
va