function accAdd(h, g) {
var f, d, b, j;
try {
f = h.toString().split(".")[1].length
} catch (i) {
f = 0
}
try {
d = g.toString().split(".")[1].length
} catch (i) {
d = 0
}
j = Math.abs(f - d);
b = Math.pow(10, Math.max(f, d));
if (j > 0) {
var a = Math.pow(10, j);
if (f > d) {
h = Number(h.toString().replace(".", ""));
g = Number(g.toString().replace(".", "")) * a
} else {
h = Number(h.toString().replace(".", "")) * a;
g = Number(g.toString().replace(".", ""))
}
} else {
h = Number(h.toString().replace(".", ""));
g = Number(g.toString().replace(".", ""))
}
return (h + g) / b
}
function accSub(f, d) {
var c, b, a, h;
try {
c = f.toString().split(".")[1].length
} catch (g) {
c = 0
}
try {
b = d.toString().split(".")[1].length
} catch (g) {
b = 0
}
a = Math.pow(10, Math.max(c, b));
h = (c >= b) ? c : b;
return ((f * a - d * a) / a).toFixed(h)
}
function accMul(d, b) {
var a = 0
, f = d.toString()
, c = b.toString();
try {
a += f.split(".")[1].length
} catch (g) {}
try {
a += c.split(".")[1].length
} catch (g) {}
return Number(f.replace(".", "")) * Number(c.replace(".", "")) / Math.pow(10, a)
}
function accDiv(arg1, arg2) {
var t1 = 0, t2 = 0, r1, r2;
try {
t1 = arg1.toString().split(".")[1].length
} catch (e) {}
try {
t2 = arg2.toString().split(".")[1].length
} catch (e) {}
with (Math) {
r1 = Number(arg1.toString().replace(".", ""));
r2 = Number(arg2.toString().replace(".", ""));
return (r1 / r2) * pow(10, t2 - t1)
}
}
js浮点计算
最新推荐文章于 2023-12-05 13:22:11 发布