2012-02-07 7 views
0

텍스트 값을 표시하고 텍스트 값이 숫자가 된 것을 우연히 발견하는 경우 JavaScript는 십진수로 .0을 표시합니다.부동 소수점 연산을 중지하십시오.

Q : 어떻게 쓰는가 :

if (typeof(X) == 'number') { 
    $('#Status').text(+X); 
} else { 
    $('#Status').text(X); 
} 

좋은 점에 대한 typeof 그것은 그 항상 반환 :

if (X is numeric) { 
    $('#Status').text(+X); 
} else { 
    $('#Status').text(X); 
} 
+0

그것은 당신이 여기에 있어요 이해하기 어렵다. 숫자 앞에'+'더하기 문자를 인쇄하고 싶다면,''X ''가 지정되어 있으면 그것을 인쇄 하시겠습니까? – Bojangles

+0

['parseInt()'] (https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/parseInt)와 ['parseFloat()'] (https : // developer.mozilla.org/en/JavaScript/Reference/Global_Objects/parseFloat)를 참조하십시오. – Bojangles

+0

질문이 확실하지 않습니다. X가 스팅 값 "9999.0"이고이를 필드에 "9999"로 표시하려면 원하는 값과 다른 해결책이 필요합니다. 먼저 숫자로 파싱 한 다음 소수점을 잘라야합니다 위치. X에 대한 입력 값 세트와 표시 할 출력을 지정하여 명확히하십시오. 입력이 문자열인지 또는 실제 자바 스크립트 숫자인지에 대해 매우 구체적이어야합니다. – jfriend00

답변

1

당신은 변수에 저장하는 것이 값의 유형을 결정하기 위해 typeof을 사용할 수 있습니다 심지어 검사 할 변수가 설정되지 않은 경우에도 문자열은 undefined입니다.

여기 typeof에 대한 좋은 문서입니다 : https://developer.mozilla.org/en/JavaScript/Reference/Operators/typeof

+0

불행히도 값이 "9990.0"이더라도 "string"을 반환합니다. –

+0

parseInt (x, 10); 그 애가 바로 저기에 ... 당신이 성취하려는 것을 완전히 이해하지 못하더라도. – Relic

+0

예, parseInt (x, 10)가 작동합니다. 감사! –