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>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM