js 小数计算,精确度不准解决方案

 

 

复制代码
        //num1 num2传入两个值  symbol +-*/符号
        amend(num1,num2,symbol){
            var str1=num1.toString(),str2=num2.toString(),result,str1Length,str2Length
            //解决整数没有小数点方法
            try {str1Length= str1.split('.')[1].length} catch (error) {str1Length=0}
            try {str2Length= str2.split('.')[1].length} catch (error) {str2Length=0}
            var step=Math.pow(10,Math.max(str1Length,str2Length))
            // 
            console.log(step);
            switch (symbol) {
                case "+":
                    result= (num1*step+num2*step)/step
                    break;
                case "-":
                    result= (num1*step-num2*step)/step
                    break;
                case "*":
                    result= ((num1*step)*(num2*step)) / step/step
                    break;
                case "/":
                    result= (num1*step)/(num2*step)
                    break;
                default:
                    break;
            }
            return result
        },
复制代码

 

posted @   小杨观世界  阅读(150)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· 因为Apifox不支持离线,我果断选择了Apipost!
点击右上角即可分享
微信分享提示