그래서 디스플레이의 너비를 나누는 중입니다. 그 결과 깨끗한 숫자가 아닙니다.숫자를 십진수와 결합하고 int로 다시 변환하는 올바른 방법은 무엇입니까?
내 현재 해결 방법은 오른쪽을 떨어 뜨려 타일 생성을위한 패딩으로 사용하는 것입니다. 나는 숫자 336.75
(4로 나눈 1366 모니터 마이너스 스크롤 막대)
을받을 경우
그래서 예를 들어, 내가 문자열로 숫자를 변환 한 후 분할 방법을 사용하여 분할합니다.문제는 오른쪽에 소수를 다시 가질 수 없다는 것입니다.
사용 :
var testNumber = 336.75,
numString = testNumber.toString(),
numParts = numString.split('.'),
numLeft = numParts[0],
numRight = numParts[1];
나는이 같은 소수에 다시 오른쪽 다리를하려고하면 :
var newNum = parseInt('.'+numRight);
내가 NaN의 결과를 얻을.
나는 0.75
숫자를 가져 와서 패딩으로 사용하고 싶습니다.
지금은 마치 누락 소수점이 없기 때문에 .75
이 숫자 75
인 것처럼 보입니다.
에서는 parseFloat 당신이 parseFloat()
를 사용하는 경우 실제로 작동합니까 시도했다
[JavaScript로 숫자의 소수 부분 표시] 가능한 복제본 (http://stackoverflow.com/questions/4512306/get-decimal-portion-of-a-number-with-javascript) –
나중에 참조 할 수 있도록 ,'parseInt'는'string'을 취하고 숫자가 아닌 문자가 발견 될 때까지 숫자를 읽거나 저장합니다. 따라서'parseInt ("."+ num)'은 문자열 ".75"를 읽으려고 시도하고,'. '문자는 보이고 종료되어'NaN'을 반환합니다. 'parseFloat'는 문자열에'. '이있을 것으로 기대하기 때문에 작동합니다. –
타입 캐스팅을 사용할 수도 있습니다 :'Number ('.'+ numRight); ' – BenM