2014-08-29 2 views
0

자바 스크립트에서 계산을 수행하려고하는데 비참하게 실패했습니다! 계산은 기술적으로 'August-Roche-Magnus approximation'으로 알려져 있으며 이슬점과 온도의 두 변수에서 상대 습도를 계산하는 데 사용됩니다.계산에서 동일한 변수를 사용하는 자바 스크립트

var humidity = (100*(((17.625 * dewpoint)/(243.04 + dewpoint))/((17.625 * temp)/(243.04 + temp)))); 

2- 변수 dewpoint & temp는 XML 피드로부터 유도하고, 계산의 결과이다 NaN된다.

도움을 주시면 감사하겠습니다.

+2

XML에서받은 값은 여전히 ​​문자열 값입니다. 'parseInt' /'parseFloat'를 사용하여 정수로 변환하거나 먼저 부동으로 변환해야합니다. – CBroe

+0

이런 식의 표준 디버깅 기술은 변수에있는 값을 조사하는 것입니다. 이를 위해 콘솔을 사용할 수 있습니다. –

답변

0

경고는 XML에서 그리고 가장 일반적인 문제는 데이터 값 형식이 될 수있는 테스트 값. 계산을 위해 당신은 부동 소수점 값을 가지고 있어야 및 부동 소수점 변환은 자바 스크립트 표현 NaN로 평가 parseFloat(value)

0

에 의해 입수 할 수 있다면 temp 또는 dewpointNaN, 또는 하나 tempdewpoint 모두 0을 경우. 나는 이것이 문제일지도 모른다라고 생각한다. 나는 또한 당신의 공식에 대해 조금 확신하지 못합니다. temp = 0dewpoint = -1 인 경우 -Infinity을 반환합니다. 수식이 섭씨 (Celsius)도를 사용한다고 가정합니다. 위키 피 디아 (Wikipedia)에 대한 간략한 내용이이를 확인하는 것으로 보입니다.

관련 문제