From 340005cf0505a16d18fb63bedb42cc0db0e87a38 Mon Sep 17 00:00:00 2001 From: alattalatta Date: Sun, 21 Nov 2021 21:51:19 +0900 Subject: Update parseFloat/parseInt --- .../reference/global_objects/parsefloat/index.md | 155 +++++++++------------ 1 file changed, 65 insertions(+), 90 deletions(-) (limited to 'files/ko/web/javascript/reference/global_objects/parsefloat') diff --git a/files/ko/web/javascript/reference/global_objects/parsefloat/index.md b/files/ko/web/javascript/reference/global_objects/parsefloat/index.md index bfc5b2d41e..9b9b6aa2f6 100644 --- a/files/ko/web/javascript/reference/global_objects/parsefloat/index.md +++ b/files/ko/web/javascript/reference/global_objects/parsefloat/index.md @@ -3,118 +3,93 @@ title: parseFloat() slug: Web/JavaScript/Reference/Global_Objects/parseFloat tags: - JavaScript + - Method - Reference -translation_of: Web/JavaScript/Reference/Global_Objects/parseFloat +browser-compat: javascript.builtins.parseFloat --- -
{{jsSidebar("Objects")}}
+{{jsSidebar("Objects")}} -

parseFloat() 함수는 문자열을 분석해 부동소수점 실수로 반환합니다.

+**`parseFloat()`** 함수는 주어진 값을 필요한 경우 문자열로 변환한 후 부동소수점 실수로 파싱해 반환합니다. -
{{EmbedInteractiveExample("pages/js/globalprops-parsefloat.html")}}
+{{EmbedInteractiveExample("pages/js/globalprops-parsefloat.html")}} +## 구문 +```js +parseFloat(string) +``` -

구문

+### 매개변수 -
parseFloat(value)
+- `string` + - : 파싱할 값입니다. 문자열이 아닐 경우 [`ToString`](https://tc39.es/ecma262/#sec-tostring) 추상 연산을 사용해 문자열로 변환합니다. 문자열의 선행 공백은 무시합니다. -

매개변수

+### 반환 값 -
-
value
-
변환할 값.
-
+주어진 문자열에서 파싱한 부동소수점 실수입니다. -

반환 값

+공백이 아닌 첫 글자를 숫자로 변환할 수 없는 경우 {{jsxref("NaN")}}을 반환합니다. -

주어진 값에서 분석한 부동소수점 수. 분석할 수 없으면 {{jsxref("NaN")}}.

+## 설명 -

설명

+`parseFloat`은 전역 객체의 함수 속성입니다. -

parseFloat()은 최상위 함수로 어떠한 객체와도 연결되어 있지 않습니다.

+- `parseFloat`이 양의 부호(`+`), 음의 부호(`-` U+002D HYPHEN-MINUS), 숫자(`0`-`9`), 소수점(`.`), 지수(`e`, `E`) 외의 다른 글자를 발견할 경우 해당 문자 이전까지의 문자만 사용해 파싱하며 문제의 문자와 그 이후는 모두 무시합니다. +- 소수점이 두 개 이상 존재할 경우 두 번째 소수점 역시 위와 같이 무시됩니다. +- 주어진 값의 선행 및 후행 공백은 무시합니다. +- 주어진 값의 첫 글자를 숫자로 변환할 수 없는 경우 {{jsxref("NaN")}}을 반환합니다. +- `parseFloat`은 {{jsxref("Infinity")}}도 파싱 후 반환할 수 있습니다. +- `parseFloat`은 {{jsxref("BigInt")}} 구문을 {{jsxref("Number")}}로 반환하므로 정확도를 잃습니다. 마지막 `n` 문자를 무시하기 때문입니다. -

parseFloat()은 매개변수로 주어진 값 분석하고 부동소수점 수를 반환합니다. 기호(+, -), 숫자(0-9), 소수점 또는 지수 이외의 문자를 발견하면, 그 전까지의 결과만 반환하고 문제의 문자와 그 이후는 모두 무시합니다. 위치에 상관하지 않고, 그런 문자를 발견하면 {{jsxref("NaN")}}을 반환하는 더 엄격한 방법이 필요하면 {{jsxref("Number", "Number(value)")}}를 고려하세요.

+더 엄격한 파싱이 필요하면, 유효하지 않은 문자가 어디에나 존재할 시 {{jsxref("NaN")}}을 반환하는 {{jsxref("Number", "Number(value)")}}를 고려하세요. -

값이 문자열인데 첫 번째 문자를 숫자로 변환할 수 없는 경우 parseFloat()NaN을 반환합니다.

+`parseFloat`은 {{jsxref("Object.toString", "toString")}}이나 {{jsxref("Object.valueOf", "valueOf")}} 메서드를 구현한 객체도 파싱할 수 있습니다. 이 때의 결과는 객체의 `toString()`, `valueOf()`의 반환 값을 `parseFloat`에 전달한 것과 동일합니다. -

수학적으로 NaN은 어떤 진법에도 속하지 않습니다. {{jsxref("isNaN", "isNaN()")}} 함수를 사용해 결과 값이 NaN인지 확인할 수 있습니다. NaN을 다른 값과의 수학 연산에 사용하면 그 결과도 언제나 NaN이 됩니다.

+## 예제 -

parseFloat()은 {{jsxref("Infinity")}}도 분석 및 반환할 수 있습니다. {{jsxref("isFinite", "isFinite()")}} 함수를 사용해 결과 값이 유한수(Infinity, -Infinity, NaN이 아닌 수)인지 알 수 있습니다.

+### 숫자를 반환하는 경우 -

parseFloat()toString이나 valueOf 메서드를 구현한 객체도 분석할 수 있습니다. 이 때의 결과는 객체의 toString(), valueOf()의 반환 값을 parseFloat()에 전달한 것과 동일합니다.

+아래 예제는 모두 `3.14`를 반환합니다. -

예제

- -

숫자를 반환하는 경우

- -

아래 예제는 모두 3.14를 반환합니다.

- -
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`을 반환하는 경우
+
+다음 예제는 {{jsxref("NaN")}}을 반환합니다.
+
+```js
+parseFloat('FF2');
+```
+
+### `parseFloat`과 `BigInt`
+
+다음 예제는 부동소수점 실수로 표현하기엔 너무 큰 수를 받거나 `n`을 무시해서 정확도를 잃어버린 `900719925474099300`을 반환합니다.
+
+```js
+parseFloat(900719925474099267n);
+parseFloat('900719925474099267n');
+```
+
+## 명세
+
+{{Specifications}}
+
+## 브라우저 호환성
+
+{{Compat}}
+
+## 같이 보기
 
-var foo = Object.create(null);
-foo.toString = function () { return "3.14"; };
-parseFloat(foo);
-
-var foo = Object.create(null);
-foo.valueOf = function () { return "3.14"; };
-parseFloat(foo);​​​​​
-
- -

NaN을 반환하는 경우

- -

다음 예제는 {{jsxref("NaN")}}을 반환합니다.

- -
parseFloat('FF2');
-
- -

명세

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
SpecificationStatusComment
{{SpecName('ES1')}}{{Spec2('ES1')}}Initial definition.
{{SpecName('ES5.1', '#sec-15.1.2.3', 'parseFloat')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-parsefloat-string', 'parseFloat')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-parsefloat-string', 'parseFloat')}}{{Spec2('ESDraft')}} 
- -

브라우저 호환성

- - - -

{{Compat("javascript.builtins.parseFloat")}}

- -

같이 보기

- - +- {{jsxref("parseInt", "parseInt()")}} +- {{jsxref("Number.parseFloat()")}} +- {{jsxref("Number.parseInt()")}} +- {{jsxref("Number.toFixed()")}} +- {{jsxref("isNaN", "isNaN()")}} -- cgit v1.2.3-54-g00ecf