2014-05-09 6 views
0

이 코드를 숫자 추가에 사용했습니다. 유일한 문제는 (10 + 1.5 = 11)과 같은 표현을 계산하지 않는다는 것입니다. 이 코드가 .5 값을 계산하지 않는 이유는 무엇입니까?자바 스크립트를 사용하여 계산기 추가

 <script> 
     function calculate() { 
     var myBox1 = document.getElementById('ORD_PRICE_1').value;  
     var myBox2 = document.getElementById('ORD_PRICE_2').value; 
    var myBox3 = document.getElementById('ORD_PRICE_3').value; 
     var result = document.getElementById('TOTAL');  
    var myResult = parseInt(myBox1) + parseInt(myBox2) + parseInt(myBox3); 
    result.value = myResult; 


     } 
    </script> 

답변

5

대신 parseFloat을 시도 정수로 변환 parseInt()를 사용하고 있기 때문에 : 소수점 값 오프

var myResult = parseFloat(myBox1) + parseFloat(myBox2) + parseFloat(myBox3); 

Here is demo

+0

감사합니다. Zaheer .... – user3503395

1

parseInt() 라운드는 따라서 계산에 포함되지 않습니다. 계산에 십진수를 사용하려면 사용해야합니다. parseFloat()

이렇게해야합니다.

<script> 
     function calculate() { 
     var myBox1 = document.getElementById('ORD_PRICE_1').value;  
     var myBox2 = document.getElementById('ORD_PRICE_2').value; 
    var myBox3 = document.getElementById('ORD_PRICE_3').value; 
     var result = document.getElementById('TOTAL');  
    var myResult = parseFloat(myBox1) + parseFloat(myBox2) + parseFloat(myBox3); 
    result.value = myResult; 


     } 
    </script> 
관련 문제