js解决浮点数的加减乘除

简介: function add(a, b) { var c, d, e; try { c = a.toString().split(".")[1].length; } catch (f) { c = 0; } try { d = b.
function add(a, b) {
    var c, d, e;
    try {
        c = a.toString().split(".")[1].length;
    } catch (f) {
        c = 0;
    }
    try {
        d = b.toString().split(".")[1].length;
    } catch (f) {
        d = 0;
    }
    return e = Math.pow(10, Math.max(c, d)), (mul(a, e) + mul(b, e)) / e;
}

function sub(a, b) {
    var c, d, e;
    try {
        c = a.toString().split(".")[1].length;
    } catch (f) {
        c = 0;
    }
    try {
        d = b.toString().split(".")[1].length;
    } catch (f) {
        d = 0;
    }
    return e = Math.pow(10, Math.max(c, d)), (mul(a, e) - mul(b, e)) / e;
}

function mul(a, b) {
    var c = 0,
        d = a.toString(),
        e = b.toString();
    try {
        c += d.split(".")[1].length;
    } catch (f) {}
    try {
        c += e.split(".")[1].length;
    } catch (f) {}
    return Number(d.replace(".", "")) * Number(e.replace(".", "")) / Math.pow(10, c);
}

function div(a, b) {
    var 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(".", "")), mul(c / d, Math.pow(10, f - e));
}

  

目录
相关文章
|
2月前
|
JavaScript 前端开发
JS浮点数精度问题及高精度小数运算:BigNumber解决方案
JS浮点数精度问题及高精度小数运算:BigNumber解决方案
223 0
|
6月前
|
存储 JavaScript 安全
Js 与浮点数
Js 与浮点数
|
6月前
|
前端开发 JavaScript 算法
JavaScript制作简版计算器,提供加减乘除功能
JavaScript制作简版计算器,提供加减乘除功能
318 0
|
7月前
|
存储 JavaScript 前端开发
浮点数不再神秘:JS浮点数精度详解
浮点数不再神秘:JS浮点数精度详解
|
JavaScript 前端开发 安全
在 JavaScript 中将浮点数转换为整数
在 JavaScript 中将浮点数转换为整数
256 0
|
存储 JavaScript 前端开发
JavaScript 数值始终是 64 位的浮点数
JavaScript 数值始终是 64 位的浮点数
92 0
|
存储 JavaScript 前端开发
JavaScript中的Null+浮点数你了解多少?
JavaScript中的Null+浮点数你了解多少?
171 0
|
前端开发 JavaScript
【前端】【JavaScript】简单的加减乘除计算器
【前端】【JavaScript】简单的加减乘除计算器
221 0
|
JavaScript
浮点数保留小数点后两位(JS)
浮点数保留小数点后两位(JS)