当前位置:网站首页 > JavaScript开发 > 正文

JavaScript精确计算加减乘除

/ * 加法 * @param arg1 * @param arg2 */ function addition(arg1,arg2){ var 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; } / * 减法 * @param arg1 * @param arg2 */ function subtraction(arg1,arg2){ var 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)); //动态控制精度长度 n=(r1>=r2)?r1:r2; return ((arg1*m-arg2*m)/m).toFixed(n); } /* * 乘法,获取精确乘法的结果值 * @param arg1 * @param arg2 */ function multiplication(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); } /* * 除法,获取精确乘法的结果值 * @param arg1 * @param arg2 */ function division(arg1,arg2){ var 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); }

 

到此这篇JavaScript精确计算加减乘除的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • JavaScript好用地址2024-11-30 14:18:08
  • JavaScript根据对象的key重新排序2024-11-30 14:18:08
  • JavaScript技术总结1:类型检查小工具2024-11-30 14:18:08
  • JavaScript技术总结2:检查是否为空2024-11-30 14:18:08
  • JavaScript技术总结4:带有范围的随机数生成器2024-11-30 14:18:08
  • JavaScript封装检测是否为空(包括空字符串、空格、null,{},[])2024-11-30 14:18:08
  • JavaScript-对象扁平化:只保留最里层key2024-11-30 14:18:08
  • JavaScript 递归遍历对象:过滤对象中为null/undefined/''/[]/{}的属性值2024-11-30 14:18:08
  • Javascript-every遍历数组 每一项均符合条件后执行相应操作2024-11-30 14:18:08
  • JavaScript 动态修改Objcet的属性值2024-11-30 14:18:08
  • 全屏图片