2020-05-27 JS的加减乘除

//js计算处理

//加法函数accAdd

export const accAdd = (arg1, arg2) => {

    arg1 = Number(arg1);

    arg2 = Number(arg2);

    let r1, r2, m;

    try {

        r1 = arg1.toString().split(".")[1].length;

    } catch (e) {

        r1 = 0;

    }

    try {

        r2 = arg2.toString().split(".")[1].length;

    } catch (e) {

        r2 = 0;

    }

    m = Math.pow(10, Math.max(r1, r2));

    return (arg1 * m + arg2 * m) / m;

};

//减法函数Subtr

export const Subtr = (arg1, arg2) => {

    arg1 = Number(arg1);

    arg2 = Number(arg2);

    let r1, r2, m, n;

    try {

        r1 = arg1.toString().split(".")[1].length;

    } catch (e) {

        r1 = 0;

    }

    try {

        r2 = arg2.toString().split(".")[1].length;

    } catch (e) {

        r2 = 0;

    }

    m = Math.pow(10, Math.max(r1, r2)); //last modify by deeka //动态控制精度长度

    n = r1 >= r2 ? r1 : r2;

    return ((arg1 * m - arg2 * m) / m).toFixed(n);

};

//乘法函数accMul

export const accMul = (arg1, arg2) => {

    arg1 = Number(arg1);

    arg2 = Number(arg2);

    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);

};

//除法函数accDiv

export const accDiv = (arg1, arg2) => {

    arg1 = Number(arg1);

    arg2 = Number(arg2);

    let t1 = 0,

        t2 = 0,

        r1,

        r2;

    try {

        t1 = arg1.toString().split(".")[1].length;

    } catch (e) {}

    try {

        t2 = arg2.toString().split(".")[1].length;

    } catch (e) {}

    r1 = Number(arg1.toString().replace(".", ""));

    r2 = Number(arg2.toString().replace(".", ""));

    return (r1 / r2) * Math.pow(10, t2 - t1);

};

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。