js 精确的乘法结果

论坛 期权论坛 脚本     
匿名技术用户   2020-12-28 04:03   38   0
    //乘法函数,用来得到精确的乘法结果     
    //说明:javascript的乘法结果会有误差,在两个浮点数相乘的时候会比较明显。这个函数返回较为精确的乘法结果。     
    //调用:accMul(arg1,arg2)     
    //返回值:arg1乘以arg2的精确结果     
    function accMul(arg1,arg2)     
    {
        var 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)     
    }
    //Number类型增加一个mul方法,调用起来更加方便。     
    Number.prototype.mul = function (arg){
        return accMul(arg, this);
    }

转载于:https://my.oschina.net/botkenni/blog/1573511

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP