zoukankan      html  css  js  c++  java
  • js 实现两个小数的相乘、相除功能

     1 <!DOCTYPE html>
     2 <html>
     3 <head>
     4 <meta charset="UTF-8">
     5 <title>jquery中的ajax</title>
     6 <script type="text/javascript" src="js/jquery-1.7.1.min.js"></script>
     7 <style type="text/css">
     8 </style>
     9 <script type="text/javascript">
    10 //计算两个数相乘
    11 function Mul(arg1, arg2){
    12 var m=0,s1=arg1.toString(),s2=arg2.toString();
    13 //获取两个相乘数据的小数点后面的数据的长度,即获取小数的位数,因为最终相乘计算的结果:结果小数的位数=第一个数的小数位数+第二个数的小数位数
    14 try{
    15 m+=s1.split(".")[1].length;
    16 }catch(e){}
    17 try{
    18 m+=s2.split(".")[1].length;
    19 }catch(e){}
    20 //将两个小数去掉小数点,强制转换整个值(即进行数值放开小数点位数的倍数),然后进行相乘的操作,相乘的结果除去10的m次方
    21 return Number(s1.replace(".",""))*Number(s2.replace(".",""))/Math.pow(10,m);
    22 }
    23 //计算两个数相除
    24 function division(arg1, arg2){
    25 var t1 = 0, t2 = 0, r1, r2;
    26 try { 
    27 t1 = new String(arg1).split(".")[1].length;
    28 } catch (e) { }
    29 try { 
    30 t2 = arg2.toString().split(".")[1].length;
    31 } catch (e) { }
    32 r1 = Number(new String(arg1).replace(".", ""));
    33 r2 = Number(arg2.toString().replace(".", ""));
    34 //放大倍数后两个数相除 后,乘以两个小数位数长度相减后的10的次幂
    35 var money = Mul((r1 / r2),Math.pow(10, t2 - t1));
    36 //保留2个小数位数
    37 return money.toFixed(2);
    38 }
    39 
    40 $(function(){
    41 alert(Mul(1.414,1.732));
    42 alert(division(1.732,1.4146));
    43 });
    44 </script>
    45 </head>
    46 <body>
    47 </body>
    48 </html>
  • 相关阅读:
    Linux libcurl使用 (收藏)
    公钥和私钥与认证和签名
    fedora下配置ipv6 dns服务器
    SHA1
    linux IP 命令
    SSL/TLS协议簇加解密流程
    MD5算法实现原理
    container_of深入理解
    diff和patch使用指南
    oracle 笔记
  • 原文地址:https://www.cnblogs.com/yuwenjing0727/p/11122176.html
Copyright © 2011-2022 走看看