zoukankan      html  css  js  c++  java
  • JS的精确简单的加减乘除

    简单的写法:

    <script>
    function decNum(a){/*获取小数位数*/
        var r=0;
        a=a.toString();
        if(a.indexOf(".")!== -1) r=a.split(".")[1].length;
        return r;
    }
    function int(a){/*去除小数点并转成数值*/
        return parseInt(a.toString().replace(".",""));
    }
    function calc(a,b,type){//加减乘除
        var r,
            da=decNum(a),
            db=decNum(b),
            dsum=da+db,
            dmin=Math.min(da,db),
            dmax=Math.max(da,db);
        dsum+=dmax-dmin;
        dsum=Math.pow(10,dsum);
        dmax=Math.pow(10,dmax);
        a=int(a);
        b=int(b);
        if(da>db){
            b*=Math.pow(10,da-db);
        }else{
            a*=Math.pow(10,db-da);
        }
        switch(type){
            case "add":
                r=(a+b)/dmax;
                break;
            case "subtract":
                r=(a-b)/dmax;
                break;
            case "multiply":
                r=(a*b)/dsum;
                break;
            case "divide":
                r=a/b;
                break;
        }
        return r;
    }
    s=calc(0.1,0.2,"add");
    console.log(s);
    s=calc(-0.1,0.2,"add");
    console.log(s);
    s=calc(0.2,0.1,"subtract");
    console.log(s);
    s=calc(0.002,0.01,"multiply");
    console.log(s);
    s=calc(2.2,100,"divide");
    console.log(s);
    </script>
    
  • 相关阅读:
    PHP开发者常犯的MySQL错误
    linux 用户管理
    php中mysql数据库异步查询实现
    PHP 安全相关 简单知识
    js倒计时 网上流传最多的
    TP学习笔记
    Java Map
    Java集合技巧
    Java集合之HashSet/TreeSet原理
    Java Set
  • 原文地址:https://www.cnblogs.com/zhyphp/p/11507478.html
Copyright © 2011-2022 走看看