2016-01-07 96 views
2

目前我的簡單的JavaScript計算器能夠計算整個數字。然而它不能用像3,4或9,2等的十進制數來代替...... getal1 & getal2代表編號1 & number2。函數分別是正號,負號,乘號和除號。如何讓我的javascript計算器計算十進制數?

function plus() 
 
{ 
 
\t var getal1 = document.getElementById('getal1').value; 
 
\t var getal2 = document.getElementById('getal2').value; 
 
\t document.getElementById('resultaat').value=parseInt(getal1) + parseInt(getal2); 
 
\t document.form1.submit(); 
 
} 
 
    
 
function min() 
 
{ 
 
\t var getal1 = document.getElementById('getal1').value; 
 
\t var getal2 = document.getElementById('getal2').value; 
 
\t document.getElementById('resultaat').value=parseInt(getal1) - parseInt(getal2); 
 
\t document.form1.submit(); 
 
} 
 
    
 
function keer() 
 
{ 
 
\t var getal1 = document.getElementById('getal1').value; 
 
\t var getal2 = document.getElementById('getal2').value; 
 
\t document.getElementById('resultaat').value=parseInt(getal1) * parseInt(getal2); 
 
\t document.form1.submit(); 
 
} 
 
    
 
function delen() 
 
{ 
 
\t var getal1 = document.getElementById('getal1').value; 
 
\t var getal2 = document.getElementById('getal2').value; 
 

 
\t document.getElementById('resultaat').value=parseInt(getal1)/parseInt(getal2); 
 
\t document.form1.submit(); 
 
}
<!doctype html> 
 
<html> 
 
\t <head> 
 
\t \t <title> 
 
\t \t \t Oefening calculator 
 
\t \t </title> 
 
\t \t <script src="Javascript.js"> 
 
\t \t </script> 
 
\t \t <link rel="stylesheet" type="text/css" href="StyleSheet.css"> 
 
\t </head> 
 
\t \t <body> 
 
\t \t 
 
\t \t \t <div id="calculator"> 
 
\t \t \t 
 
\t \t \t <!-- Invoervelden getal1 en getal2 --> 
 
\t \t \t \t <form id="point1"> 
 
\t \t \t \t \t <label for="getal1"> 
 
\t \t \t \t \t \t Geef 1e getal : 
 
\t \t \t \t \t </label> 
 
\t \t \t \t \t <input type="number" name="getal1" id="getal1"> 
 
\t \t \t \t <br /> 
 
\t \t \t \t \t <label for="getal2"> 
 
\t \t \t \t \t \t Geef 2e getal : 
 
\t \t \t \t \t </label> 
 
\t \t \t \t \t <input type="number" name="getal2" id="getal2"> 
 
\t \t \t \t </form> 
 
\t \t \t \t 
 
\t \t \t <!-- De som knoppen --> 
 
\t \t \t <div id="knoppen"> 
 
\t \t \t \t <button onClick="plus()"> 
 
\t \t \t \t \t + 
 
\t \t \t \t </button> 
 
\t \t \t \t <button onClick="min()"> 
 
\t \t \t \t \t - 
 
\t \t \t \t </button> 
 
\t \t \t \t <button onClick="keer()"> 
 
\t \t \t \t \t x 
 
\t \t \t \t </button> 
 
\t \t \t \t <button onClick="delen()"> 
 
\t \t \t \t \t/
 
\t \t \t \t </button> 
 
\t \t \t </div> 
 
\t \t \t \t <br /> 
 
\t \t \t \t 
 
\t \t \t <!-- Het resultaat tekstblok --> 
 
\t \t \t \t <form id="point3"> 
 
\t \t \t \t \t <label for="resultaat"> 
 
\t \t \t \t \t \t Resultaat 
 
\t \t \t \t \t </label> 
 
\t \t \t \t \t <input type="number" name="resultaat" id="resultaat"> 
 
\t \t \t \t </form> 
 
\t \t \t \t 
 
\t \t \t </div> 
 
\t \t \t 
 
\t \t </body> 
 
</html>

+3

你試圖通過parseFloat替換所有parseInt函數? – gurvinder372

+0

您只需要使用* parseInt *或* parseFloat *來添加乘法,除法和減法,字符串值可以毫無問題地使用(假設它們是當然有效的數字)。 – RobG

回答

6

變化parseIntparseFloatparseInt是不是小數的整數,當用戶輸入十進制數時,它忽略小數。

實例爲您加功能:

function plus() 
{ 
var getal1 = document.getElementById('getal1').value; 
var getal2 = document.getElementById('getal2').value; 
document.getElementById('resultaat').value=parseFloat(getal1) + parseFloat(getal2); 
document.form1.submit(); 
} 
+0

謝謝,它的工作! –

0

下面的代碼,可以將decimat數字了。只需使用parseFloat更改parseInt即可。您可以圓了你的答案是這樣

Math.round(num * 100)/100 

function plus() 
 
{ 
 
\t var getal1 = document.getElementById('getal1').value; 
 
\t var getal2 = document.getElementById('getal2').value; 
 
\t document.getElementById('resultaat').value=parseFloat(getal1) +  parseFloat(getal2); 
 
\t document.form1.submit(); 
 
} 
 
    
 
function min() 
 
{ 
 
\t var getal1 = document.getElementById('getal1').value; 
 
\t var getal2 = document.getElementById('getal2').value; 
 
\t document.getElementById('resultaat').value=parseFloat(getal1) -  parseFloat(getal2); 
 
\t document.form1.submit(); 
 
} 
 
    
 
function keer() 
 
{ 
 
\t var getal1 = document.getElementById('getal1').value; 
 
\t var getal2 = document.getElementById('getal2').value; 
 
\t document.getElementById('resultaat').value=parseFloat(getal1) *  parseFloat(getal2); 
 
\t document.form1.submit(); 
 
} 
 
    
 
function delen() 
 
{ 
 
\t var getal1 = document.getElementById('getal1').value; 
 
\t var getal2 = document.getElementById('getal2').value; 
 
\t document.getElementById('resultaat').value=parseFloat(getal1)/  parseFloat(getal2); 
 
\t document.form1.submit(); 
 
}
<!doctype html> 
 
<html> 
 
\t <head> 
 
\t \t <title> 
 
\t \t \t Oefening calculator 
 
\t \t </title> 
 
\t \t <script src="Javascript.js"> 
 
\t \t </script> 
 
\t \t <link rel="stylesheet" type="text/css" href="StyleSheet.css"> 
 
\t </head> 
 
\t \t <body> 
 
\t \t 
 
\t \t \t <div id="calculator"> 
 
\t \t \t 
 
\t \t \t <!-- Invoervelden getal1 en getal2 --> 
 
\t \t \t \t <form id="point1"> 
 
\t \t \t \t \t <label for="getal1"> 
 
\t \t \t \t \t \t Geef 1e getal : 
 
\t \t \t \t \t </label> 
 
\t \t \t \t \t <input type="number" name="getal1" id="getal1"> 
 
\t \t \t \t <br /> 
 
\t \t \t \t \t <label for="getal2"> 
 
\t \t \t \t \t \t Geef 2e getal : 
 
\t \t \t \t \t </label> 
 
\t \t \t \t \t <input type="number" name="getal2" id="getal2"> 
 
\t \t \t \t </form> 
 
\t \t \t \t 
 
\t \t \t <!-- De som knoppen --> 
 
\t \t \t <div id="knoppen"> 
 
\t \t \t \t <button onClick="plus()"> 
 
\t \t \t \t \t + 
 
\t \t \t \t </button> 
 
\t \t \t \t <button onClick="min()"> 
 
\t \t \t \t \t - 
 
\t \t \t \t </button> 
 
\t \t \t \t <button onClick="keer()"> 
 
\t \t \t \t \t x 
 
\t \t \t \t </button> 
 
\t \t \t \t <button onClick="delen()"> 
 
\t \t \t \t \t/
 
\t \t \t \t </button> 
 
\t \t \t </div> 
 
\t \t \t \t <br /> 
 
\t \t \t \t 
 
\t \t \t <!-- Het resultaat tekstblok --> 
 
\t \t \t \t <form id="point3"> 
 
\t \t \t \t \t <label for="resultaat"> 
 
\t \t \t \t \t \t Resultaat 
 
\t \t \t \t \t </label> 
 
\t \t \t \t \t <input type="number" name="resultaat" id="resultaat"> 
 
\t \t \t \t </form> 
 
\t \t \t \t 
 
\t \t \t </div> 
 
\t \t \t 
 
\t \t </body> 
 
</html>