parseFloat()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
parseFloat()
함수는 주어진 값을 필요한 경우 문자열로 변환한 후 부동소수점 실수로 파싱해 반환합니다.
시도해보기
구문
js
parseFloat(string);
매개변수
반환 값
주어진 문자열에서 파싱한 부동소수점 실수입니다.
공백이 아닌 첫 글자를 숫자로 변환할 수 없는 경우 NaN
을 반환합니다.
설명
parseFloat
은 전역 객체의 함수 속성입니다.
parseFloat
이 양의 부호(+
), 음의 부호(-
U+002D HYPHEN-MINUS), 숫자(0
-9
), 소수점(.
), 지수(e
,E
) 외의 다른 글자를 발견할 경우 해당 문자 이전까지의 문자만 사용해 파싱하며 문제의 문자와 그 이후는 모두 무시합니다.- 소수점이 두 개 이상 존재할 경우 두 번째 소수점 역시 위와 같이 무시됩니다.
- 주어진 값의 선행 및 후행 공백은 무시합니다.
- 주어진 값의 첫 글자를 숫자로 변환할 수 없는 경우
NaN
을 반환합니다. parseFloat
은Infinity
도 파싱 후 반환할 수 있습니다.parseFloat
은BigInt
구문을Number
로 반환하므로 정확도를 잃습니다. 마지막n
문자를 무시하기 때문입니다.
더 엄격한 파싱이 필요하면, 유효하지 않은 문자가 어디에나 존재할 시 NaN
을 반환하는 Number(value)
를 고려하세요.
parseFloat
은 toString
이나 valueOf
메서드를 구현한 객체도 파싱할 수 있습니다. 이 때의 결과는 객체의 toString()
, valueOf()
의 반환 값을 parseFloat
에 전달한 것과 동일합니다.
예제
숫자를 반환하는 경우
아래 예제는 모두 3.14
를 반환합니다.
js
parseFloat(3.14);
parseFloat("3.14");
parseFloat(" 3.14 ");
parseFloat("314e-2");
parseFloat("0.0314E+2");
parseFloat("3.14와 숫자가 아닌 문자들");
parseFloat({
toString: function () {
return "3.14";
},
});
NaN
을 반환하는 경우
다음 예제는 NaN
을 반환합니다.
js
parseFloat("FF2");
parseFloat
과 BigInt
다음 예제는 부동소수점 실수로 표현하기엔 너무 큰 수를 받거나 n
을 무시해서 정확도를 잃어버린 900719925474099300
을 반환합니다.
js
parseFloat(900719925474099267n);
parseFloat("900719925474099267n");
명세
Specification |
---|
ECMAScript Language Specification # sec-parsefloat-string |
브라우저 호환성
BCD tables only load in the browser