From 751187f65c9eec62df17f46166f1b9faaec4c61e Mon Sep 17 00:00:00 2001 From: alattalatta Date: Sun, 21 Nov 2021 20:57:31 +0900 Subject: Rename parseFloat/parseInt to md --- .../global_objects/number/parsefloat/index.html | 77 ------- .../global_objects/number/parsefloat/index.md | 77 +++++++ .../global_objects/number/parseint/index.html | 78 -------- .../global_objects/number/parseint/index.md | 78 ++++++++ .../reference/global_objects/parsefloat/index.html | 120 ----------- .../reference/global_objects/parsefloat/index.md | 120 +++++++++++ .../reference/global_objects/parseint/index.html | 221 --------------------- .../reference/global_objects/parseint/index.md | 221 +++++++++++++++++++++ 8 files changed, 496 insertions(+), 496 deletions(-) delete mode 100644 files/ko/web/javascript/reference/global_objects/number/parsefloat/index.html create mode 100644 files/ko/web/javascript/reference/global_objects/number/parsefloat/index.md delete mode 100644 files/ko/web/javascript/reference/global_objects/number/parseint/index.html create mode 100644 files/ko/web/javascript/reference/global_objects/number/parseint/index.md delete mode 100644 files/ko/web/javascript/reference/global_objects/parsefloat/index.html create mode 100644 files/ko/web/javascript/reference/global_objects/parsefloat/index.md delete mode 100644 files/ko/web/javascript/reference/global_objects/parseint/index.html create mode 100644 files/ko/web/javascript/reference/global_objects/parseint/index.md (limited to 'files/ko') diff --git a/files/ko/web/javascript/reference/global_objects/number/parsefloat/index.html b/files/ko/web/javascript/reference/global_objects/number/parsefloat/index.html deleted file mode 100644 index 0b57723065..0000000000 --- a/files/ko/web/javascript/reference/global_objects/number/parsefloat/index.html +++ /dev/null @@ -1,77 +0,0 @@ ---- -title: Number.parseFloat() -slug: Web/JavaScript/Reference/Global_Objects/Number/parseFloat -tags: - - ECMAScript 2015 - - JavaScript - - Method - - Number -translation_of: Web/JavaScript/Reference/Global_Objects/Number/parseFloat ---- -
{{JSRef}}
- -

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

- -
{{EmbedInteractiveExample("pages/js/number-parsefloat.html")}}
- - - -

구문

- -
Number.parseFloat(string)
- -

매개변수

- -

{{page("ko/docs/Web/JavaScript/Reference/Global_Objects/parseFloat", "매개변수")}}

- -

반환 값

- -

{{page("ko/docs/Web/JavaScript/Reference/Global_Objects/parseFloat", "반환 값")}}

- -

설명

- -

Number.parseFloat() 메서드는 전역 {{jsxref("parseFloat", "parseFloat()")}} 함수와 같은 기능을 가지고 있습니다.

- -
Number.parseFloat === parseFloat; // true
- -

Number.parseFloat()는 ECMAScript 2015에서 전역 범위의 모듈화를 위해 추가됐습니다. 상세한 정보와 예제는 {{jsxref("parseFloat", "parseFloat()")}}를 참고하세요.

- -

폴리필

- -
if (Number.parseFloat === undefined) {
-    Number.parseFloat = parseFloat;
-}
-
- -

명세

- - - - - - - - - - - - - - - - - - - -
SpecificationStatusComment
{{SpecName('ES2015', '#sec-number.parsefloat', 'Number.parseFloat')}}{{Spec2('ES2015')}}Initial definition.
{{SpecName('ESDraft', '#sec-number.parsefloat', 'Number.parseFloat')}}{{Spec2('ESDraft')}} 
- -

브라우저 호환성

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

같이 보기

- - diff --git a/files/ko/web/javascript/reference/global_objects/number/parsefloat/index.md b/files/ko/web/javascript/reference/global_objects/number/parsefloat/index.md new file mode 100644 index 0000000000..0b57723065 --- /dev/null +++ b/files/ko/web/javascript/reference/global_objects/number/parsefloat/index.md @@ -0,0 +1,77 @@ +--- +title: Number.parseFloat() +slug: Web/JavaScript/Reference/Global_Objects/Number/parseFloat +tags: + - ECMAScript 2015 + - JavaScript + - Method + - Number +translation_of: Web/JavaScript/Reference/Global_Objects/Number/parseFloat +--- +
{{JSRef}}
+ +

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

+ +
{{EmbedInteractiveExample("pages/js/number-parsefloat.html")}}
+ + + +

구문

+ +
Number.parseFloat(string)
+ +

매개변수

+ +

{{page("ko/docs/Web/JavaScript/Reference/Global_Objects/parseFloat", "매개변수")}}

+ +

반환 값

+ +

{{page("ko/docs/Web/JavaScript/Reference/Global_Objects/parseFloat", "반환 값")}}

+ +

설명

+ +

Number.parseFloat() 메서드는 전역 {{jsxref("parseFloat", "parseFloat()")}} 함수와 같은 기능을 가지고 있습니다.

+ +
Number.parseFloat === parseFloat; // true
+ +

Number.parseFloat()는 ECMAScript 2015에서 전역 범위의 모듈화를 위해 추가됐습니다. 상세한 정보와 예제는 {{jsxref("parseFloat", "parseFloat()")}}를 참고하세요.

+ +

폴리필

+ +
if (Number.parseFloat === undefined) {
+    Number.parseFloat = parseFloat;
+}
+
+ +

명세

+ + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES2015', '#sec-number.parsefloat', 'Number.parseFloat')}}{{Spec2('ES2015')}}Initial definition.
{{SpecName('ESDraft', '#sec-number.parsefloat', 'Number.parseFloat')}}{{Spec2('ESDraft')}} 
+ +

브라우저 호환성

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

같이 보기

+ + diff --git a/files/ko/web/javascript/reference/global_objects/number/parseint/index.html b/files/ko/web/javascript/reference/global_objects/number/parseint/index.html deleted file mode 100644 index 0b0a052016..0000000000 --- a/files/ko/web/javascript/reference/global_objects/number/parseint/index.html +++ /dev/null @@ -1,78 +0,0 @@ ---- -title: Number.parseInt() -slug: Web/JavaScript/Reference/Global_Objects/Number/parseInt -tags: - - ECMAScript 2015 - - JavaScript - - Method - - Number - - Reference -translation_of: Web/JavaScript/Reference/Global_Objects/Number/parseInt ---- -
{{JSRef}}
- -

Number.parseInt() 메서드는 문자열을 분석하고 특정 진수를 사용한 정수로 변환해 반환합니다.

- -
{{EmbedInteractiveExample("pages/js/number-parseint.html")}}
- - - -

구문

- -
Number.parseInt(string,radix])
-
- -

매개변수

- -
{{page("ko/docs/Web/JavaScript/Reference/Global_Objects/parseInt", "매개변수")}}
- -

반환 값

- -

{{page("ko/docs/Web/JavaScript/Reference/Global_Objects/parseInt", "반환 값")}}

- -

설명

- -

Number.parseInt() 메서드는 전역 {{jsxref("parseInt", "parseInt()")}} 함수와 같은 기능을 가지고 있습니다.

- -
Number.parseInt === parseInt; // true
- -

Number.parseInt()는 ECMAScript 2015에서 전역 범위의 모듈화를 위해 추가됐습니다. 상세한 정보와 예제는 {{jsxref("parseInt", "parseInt()")}}를 참고하세요.

- -

폴리필

- -
if (Number.parseInt === undefined) {
-    Number.parseInt = window.parseInt;
-}
- -

명세

- - - - - - - - - - - - - - - - - - - -
SpecificationStatusComment
{{SpecName('ES6', '#sec-number.parseint', 'Number.parseInt')}}{{Spec2('ES6')}}Initial definition.
{{SpecName('ESDraft', '#sec-number.parseint', 'Number.parseInt')}}{{Spec2('ESDraft')}} 
- -

브라우저 호환성

- -
{{Compat("javascript.builtins.Number.parseInt")}}
- -

같이 보기

- - diff --git a/files/ko/web/javascript/reference/global_objects/number/parseint/index.md b/files/ko/web/javascript/reference/global_objects/number/parseint/index.md new file mode 100644 index 0000000000..0b0a052016 --- /dev/null +++ b/files/ko/web/javascript/reference/global_objects/number/parseint/index.md @@ -0,0 +1,78 @@ +--- +title: Number.parseInt() +slug: Web/JavaScript/Reference/Global_Objects/Number/parseInt +tags: + - ECMAScript 2015 + - JavaScript + - Method + - Number + - Reference +translation_of: Web/JavaScript/Reference/Global_Objects/Number/parseInt +--- +
{{JSRef}}
+ +

Number.parseInt() 메서드는 문자열을 분석하고 특정 진수를 사용한 정수로 변환해 반환합니다.

+ +
{{EmbedInteractiveExample("pages/js/number-parseint.html")}}
+ + + +

구문

+ +
Number.parseInt(string,radix])
+
+ +

매개변수

+ +
{{page("ko/docs/Web/JavaScript/Reference/Global_Objects/parseInt", "매개변수")}}
+ +

반환 값

+ +

{{page("ko/docs/Web/JavaScript/Reference/Global_Objects/parseInt", "반환 값")}}

+ +

설명

+ +

Number.parseInt() 메서드는 전역 {{jsxref("parseInt", "parseInt()")}} 함수와 같은 기능을 가지고 있습니다.

+ +
Number.parseInt === parseInt; // true
+ +

Number.parseInt()는 ECMAScript 2015에서 전역 범위의 모듈화를 위해 추가됐습니다. 상세한 정보와 예제는 {{jsxref("parseInt", "parseInt()")}}를 참고하세요.

+ +

폴리필

+ +
if (Number.parseInt === undefined) {
+    Number.parseInt = window.parseInt;
+}
+ +

명세

+ + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES6', '#sec-number.parseint', 'Number.parseInt')}}{{Spec2('ES6')}}Initial definition.
{{SpecName('ESDraft', '#sec-number.parseint', 'Number.parseInt')}}{{Spec2('ESDraft')}} 
+ +

브라우저 호환성

+ +
{{Compat("javascript.builtins.Number.parseInt")}}
+ +

같이 보기

+ + diff --git a/files/ko/web/javascript/reference/global_objects/parsefloat/index.html b/files/ko/web/javascript/reference/global_objects/parsefloat/index.html deleted file mode 100644 index bfc5b2d41e..0000000000 --- a/files/ko/web/javascript/reference/global_objects/parsefloat/index.html +++ /dev/null @@ -1,120 +0,0 @@ ---- -title: parseFloat() -slug: Web/JavaScript/Reference/Global_Objects/parseFloat -tags: - - JavaScript - - Reference -translation_of: Web/JavaScript/Reference/Global_Objects/parseFloat ---- -
{{jsSidebar("Objects")}}
- -

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

- -
{{EmbedInteractiveExample("pages/js/globalprops-parsefloat.html")}}
- - - -

구문

- -
parseFloat(value)
- -

매개변수

- -
-
value
-
변환할 값.
-
- -

반환 값

- -

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

- -

설명

- -

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

- -

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

- -

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

- -

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

- -

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

- -

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

- -

예제

- -

숫자를 반환하는 경우

- -

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

- -
parseFloat(3.14);
-parseFloat('3.14');
-parseFloat('314e-2');
-parseFloat('0.0314E+2');
-parseFloat('3.14와 숫자가 아닌 문자들');
-
-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")}}

- -

같이 보기

- - diff --git a/files/ko/web/javascript/reference/global_objects/parsefloat/index.md b/files/ko/web/javascript/reference/global_objects/parsefloat/index.md new file mode 100644 index 0000000000..bfc5b2d41e --- /dev/null +++ b/files/ko/web/javascript/reference/global_objects/parsefloat/index.md @@ -0,0 +1,120 @@ +--- +title: parseFloat() +slug: Web/JavaScript/Reference/Global_Objects/parseFloat +tags: + - JavaScript + - Reference +translation_of: Web/JavaScript/Reference/Global_Objects/parseFloat +--- +
{{jsSidebar("Objects")}}
+ +

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

+ +
{{EmbedInteractiveExample("pages/js/globalprops-parsefloat.html")}}
+ + + +

구문

+ +
parseFloat(value)
+ +

매개변수

+ +
+
value
+
변환할 값.
+
+ +

반환 값

+ +

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

+ +

설명

+ +

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

+ +

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

+ +

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

+ +

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

+ +

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

+ +

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

+ +

예제

+ +

숫자를 반환하는 경우

+ +

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

+ +
parseFloat(3.14);
+parseFloat('3.14');
+parseFloat('314e-2');
+parseFloat('0.0314E+2');
+parseFloat('3.14와 숫자가 아닌 문자들');
+
+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")}}

+ +

같이 보기

+ + diff --git a/files/ko/web/javascript/reference/global_objects/parseint/index.html b/files/ko/web/javascript/reference/global_objects/parseint/index.html deleted file mode 100644 index d52a6fcb41..0000000000 --- a/files/ko/web/javascript/reference/global_objects/parseint/index.html +++ /dev/null @@ -1,221 +0,0 @@ ---- -title: parseInt() -slug: Web/JavaScript/Reference/Global_Objects/parseInt -tags: - - JavaScript - - Reference -browser-compat: javascript.builtins.parseInt -translation_of: Web/JavaScript/Reference/Global_Objects/parseInt ---- -
{{jsSidebar("Objects")}}
- -

parseInt() 함수는 문자열 인자를 구문분석하여 특정 진수(수의 진법 체계에 기준이 되는 값)의 정수를 반환합니다.

- -
{{EmbedInteractiveExample("pages/js/globalprops-parseint.html")}}
- - - -

구문

- -
parseInt(string, radix);
- -

매개변수

- -
-
string
-
분석할 값. 만약 string이 문자열이 아니면 문자열로 변환(ToString 추상 연산을 사용)합니다. 문자열의 선행 공백은 무시합니다.
-
- -
-
radix{{optional_inline}}
-
string이 표현하는 정수를 나타내는 2와 36 사이의 진수(수의 진법 체계에 기준이 되는 값). 주의하세요-기본값이 10이 아닙니다!
-
-
-
-

아래의 설명은 radix가 제공되지 않았을때 무엇이 발생하는지 상세하게 설명하고 있습니다.

-
-
-
- -

반환 값

- -

주어진 string로부터 분석한 정수.

- -

또는 아래의 경우에는 {{jsxref("NaN")}}을 반환합니다

- - - -

설명

- -

parseInt 함수는 첫 번째 인자를 문자열로 변환하고 파싱하고,  그 문자열을 파싱하여 정수나 NaN을 리턴합니다.

- -

만약 NaN이 아니면, 첫번째 인자를 특정 radix(진수) 값으로 표현한 정수가 반환됩니다. (예를 들면, radix가 10인 경우 십진수로 변환하며, 8인 경우는 8진수로, 16인 경우 16진수 등등으로  변환합니다.)

- -

radix 가 10 이상인 경우, 9보다 큰 숫자들은 알파벳 문자로 나타내집니다. 예를 들면, 16 진수의 경우, A부터 F가 사용됩니다.

- -

만약 parseInt 함수가 특정 진수를 나타내는 숫자가 아닌 글자를 마주치게 되면, 이 글자와 계속되는 글자들은 전부 무시되며, 파싱된 정수값을 리턴합니다. parseInt 함수는 정수값으로 숫자를 잘라버립니다. 맨 앞의 공백과 그 뒤의 공백들은 허용됩니다.

- -

일부 숫자들은 문자열 표현에 e 문자를 사용하기 때문에(예: 6.022 × 10^23의 경우 6.022e23 ) 숫자를 자르기 위하여 parseInt를 사용하는 것은 매우 크거나 매우 작은 숫자에 사용하는 경우 예기치 않은 결과가 발생합니다. parseInt는 {{jsxref("Math.floor()")}}의 대체품으로 사용해서는 안 됩니다.

- -

parseInt는 양수를 의미하는 기호와 음수를 나타내는 - 기호를 정확히 이해합니다(ECMAScript 1 이후). 공백이 제거된 후 구문 분석의 초기 단계로 수행됩니다. 기호를 찾을 수 없으면 알고리즘이 다음 단계로 이동하고, 그렇지 않으면 기호를 제거하고 문자열의 나머지 부분에서 숫자 파싱을 실행합니다.

- -

만약 radixundefined 이거나 0이라면, (또는 없다면), JavaScript 는 아래와 같이 임의 처리합니다. :

- -
    -
  1. 인풋 값 string 이 "0x" 나 "0X"로 시작한다면, radix 는 16(16진)이며, 나머지 문자열은 파싱됩니다.
  2. -
  3. 인풋 값 string 이 "0"으로 시작한다면, radix 는 8(8진)이거나, 10(십진)입니다. 정확히 이 선택된 radix 는 구현 의존적적입니다. ECMAScript 5 는 10(십진)이 사용되는 것을 명시하지만, 모든 브라우저가 아직 이렇게 되지 않습니다. 이러한 이유로 항상 parseInt를 사용할 때는 radix 값을 명시해야 합니다.
  4. -
  5. 인풋 값 string 이 다른 값으로 시작 된다면, radix 는 10(십진)입니다.
  6. -
- -

첫 번째 글자가 숫자로 변환될 수 없다면, parseIntNaN을 리턴할 것입니다.

- -

연산의 경우, NaN 값은 어떠한 radix 숫자도 아닙니다. parseInt 값이 NaN인지 알아내기 위해 {{jsxref("isNaN")}} 함수를 호출할 수 있습니다. 만약 NaN이 산술 연산으로 넘겨진다면, 이 연산의 결과 또한 NaN이 될 것입니다.

- -

특정 진수의 스트링 리터럴로 숫자를 변환하는 것은 intValue.toString(radix)를 사용합니다.

- -
-

{{jsxref("BigInt")}} 주의: parseInt는 {{jsxref("BigInt")}}를 {{jsxref("Number")}}으로 변환하여 정확성을 떨어뜨립니다. 이는 "n"을 포함한 숫자가 아닌 값은 삭제되기 때문입니다.

-
- -

radix가 없는 8진 해석

- -

비록 ECMAScript 3 에서 권장되지 않고, ECMAScript 5 에서 금지되었지만, 많은 구현들은 0으로 시작하는 8진수 문자열을 해석합니다. 다음의 코드는 8진 결과를 가질 수도 있으며, 10진의 결과를 가질 수도 있습니다. 항상 이러한 명확하지 않은 표현은 피하고 radix를 명시하도록 합니다.

- -
parseInt("0e0"); // 0
-parseInt("08"); // 0, '8' 은 8진수가 아니다.
-
- -

ECMAScript 5는 8진수 해석을 삭제하였습니다.

- -

ECMAScript 5의 parseInt 함수 스펙은 더 이상 0 으로 시작하는 8진수 값의 문자열을 다루는 구현을 허용하지 않습니다. ECMAScript 5는 다음을 발표했습니다. :

- -

parseInt 함수는 특정 radix(진수)값에 따라 문자열 아규먼트 내용의 해석을 하고, 그 영향을 받은 정수 값을 생성합니다. 문자열 내에서 시작되는 부분에 위치한 공백은 무시됩니다. 만약 radix 값이 정의되지 않거나, 0이라면, 이것은 10진수로 여겨집니다. 0x 이나 0X 으로 시작되는 숫자 일 때는 16진수로 여겨집니다.

- -

ECMAScript 3 와의 차이는 8진수의 해석을 허용하고 있느냐의 차이입니다.

- -

많은 구현들이 2013부터 이 방식을 채택하고 있지 않아 왔습니다. 오래된 브라우저는 지원되어야 하기 때문에 항상 radix 값을 명시 해야합니다.

- -

더 엄격한 파싱 함수

- -

가끔은 int 값을 파싱할 때 더 엄격한 방식을 이용하는 것이유용합니다. 정규 표현식이 도움이 될 것입니다. :

- -
filterInt = function (value) {
-  if(/^(\-|\+)?([0-9]+|Infinity)$/.test(value))
-    return Number(value);
-  return NaN;
-}
-
-console.log(filterInt('421'));               // 421
-console.log(filterInt('-421'));              // -421
-console.log(filterInt('+421'));              // 421
-console.log(filterInt('Infinity'));          // Infinity
-console.log(filterInt('421e+0'));            // NaN
-console.log(filterInt('421hop'));            // NaN
-console.log(filterInt('hop1.61803398875'));  // NaN
-console.log(filterInt('1.61803398875'));     // NaN
-
- -

예제

- -

parseInt() 사용하기

- -

다음의 예제는 모두 15를 리턴합니다.

- -
parseInt(" 0xF", 16);
-parseInt(" F", 16);
-parseInt("17", 8);
-parseInt(021, 8);
-parseInt("015", 10);   // parseInt(015, 10);  13이 리턴될 것입니다.
-parseInt(15.99, 10);
-parseInt("15,123", 10);
-parseInt("FXX123", 16);
-parseInt("1111", 2);
-parseInt("15*3", 10);
-parseInt("15e2", 10);
-parseInt("15px", 10);
-parseInt("12", 13);
-
- -

다음의 예제는 모두 NaN을 리턴합니다.

- -
parseInt("Hello", 8); // 전부 숫자가 아님.
-parseInt("546", 2);   // 숫자는 2진법 표현이 불가능함.
-
- -

다음의 예제는 모두 -15을 리턴합니다. :

- -
parseInt("-F", 16);
-parseInt("-0F", 16);
-parseInt("-0XF", 16);
-parseInt(-15.1, 10)
-parseInt(" -17", 8);
-parseInt(" -15", 10);
-parseInt("-1111", 2);
-parseInt("-15e1", 10);
-parseInt("-12", 13);
-
- -

다음의 예제는 모두 4를 리턴합니다.

- -
parseInt(4.7, 10)
-parseInt(4.7 * 1e22, 10)        // 매우 큰 숫자가 4가 됨
-parseInt(0.00000000000434, 10)  // 매우 작은 숫자가 4가 됨
-
- -

만약 숫자가 1e+21과 같거나 큰 경우, 또는 1e-7과 같거나 작은 경우, 1을 리턴합니다.(radix가 10인 경우)

- -
parseInt(0.0000001,10);
-parseInt(0.000000123,10);
-parseInt(1e-7,10);
-parseInt(1000000000000000000000,10);
-parseInt(123000000000000000000000,10);
-parseInt(1e+21,10);
-
- -

다음의 예제는 모두 224를 리턴합니다.

- -
parseInt("0e0", 16);
-
- -

{{jsxref("BigInt")}} 는 정확성을 잃습니다.

- -
parseInt('900719925474099267n')
-// 900719925474099300
- -

parseInt 는 숫자구분자와 같이 작동하지 않습니다.

- -
parseInt('123_456')
-// 123
- -

명세

- - - - - - - - - - - - -
Specification
{{SpecName('ESDraft', '#sec-parseint-string-radix', 'parseInt')}}
- -

브라우저 호환성

- -
{{Compat}}
- -

같이 보기

- - diff --git a/files/ko/web/javascript/reference/global_objects/parseint/index.md b/files/ko/web/javascript/reference/global_objects/parseint/index.md new file mode 100644 index 0000000000..d52a6fcb41 --- /dev/null +++ b/files/ko/web/javascript/reference/global_objects/parseint/index.md @@ -0,0 +1,221 @@ +--- +title: parseInt() +slug: Web/JavaScript/Reference/Global_Objects/parseInt +tags: + - JavaScript + - Reference +browser-compat: javascript.builtins.parseInt +translation_of: Web/JavaScript/Reference/Global_Objects/parseInt +--- +
{{jsSidebar("Objects")}}
+ +

parseInt() 함수는 문자열 인자를 구문분석하여 특정 진수(수의 진법 체계에 기준이 되는 값)의 정수를 반환합니다.

+ +
{{EmbedInteractiveExample("pages/js/globalprops-parseint.html")}}
+ + + +

구문

+ +
parseInt(string, radix);
+ +

매개변수

+ +
+
string
+
분석할 값. 만약 string이 문자열이 아니면 문자열로 변환(ToString 추상 연산을 사용)합니다. 문자열의 선행 공백은 무시합니다.
+
+ +
+
radix{{optional_inline}}
+
string이 표현하는 정수를 나타내는 2와 36 사이의 진수(수의 진법 체계에 기준이 되는 값). 주의하세요-기본값이 10이 아닙니다!
+
+
+
+

아래의 설명은 radix가 제공되지 않았을때 무엇이 발생하는지 상세하게 설명하고 있습니다.

+
+
+
+ +

반환 값

+ +

주어진 string로부터 분석한 정수.

+ +

또는 아래의 경우에는 {{jsxref("NaN")}}을 반환합니다

+ + + +

설명

+ +

parseInt 함수는 첫 번째 인자를 문자열로 변환하고 파싱하고,  그 문자열을 파싱하여 정수나 NaN을 리턴합니다.

+ +

만약 NaN이 아니면, 첫번째 인자를 특정 radix(진수) 값으로 표현한 정수가 반환됩니다. (예를 들면, radix가 10인 경우 십진수로 변환하며, 8인 경우는 8진수로, 16인 경우 16진수 등등으로  변환합니다.)

+ +

radix 가 10 이상인 경우, 9보다 큰 숫자들은 알파벳 문자로 나타내집니다. 예를 들면, 16 진수의 경우, A부터 F가 사용됩니다.

+ +

만약 parseInt 함수가 특정 진수를 나타내는 숫자가 아닌 글자를 마주치게 되면, 이 글자와 계속되는 글자들은 전부 무시되며, 파싱된 정수값을 리턴합니다. parseInt 함수는 정수값으로 숫자를 잘라버립니다. 맨 앞의 공백과 그 뒤의 공백들은 허용됩니다.

+ +

일부 숫자들은 문자열 표현에 e 문자를 사용하기 때문에(예: 6.022 × 10^23의 경우 6.022e23 ) 숫자를 자르기 위하여 parseInt를 사용하는 것은 매우 크거나 매우 작은 숫자에 사용하는 경우 예기치 않은 결과가 발생합니다. parseInt는 {{jsxref("Math.floor()")}}의 대체품으로 사용해서는 안 됩니다.

+ +

parseInt는 양수를 의미하는 기호와 음수를 나타내는 - 기호를 정확히 이해합니다(ECMAScript 1 이후). 공백이 제거된 후 구문 분석의 초기 단계로 수행됩니다. 기호를 찾을 수 없으면 알고리즘이 다음 단계로 이동하고, 그렇지 않으면 기호를 제거하고 문자열의 나머지 부분에서 숫자 파싱을 실행합니다.

+ +

만약 radixundefined 이거나 0이라면, (또는 없다면), JavaScript 는 아래와 같이 임의 처리합니다. :

+ +
    +
  1. 인풋 값 string 이 "0x" 나 "0X"로 시작한다면, radix 는 16(16진)이며, 나머지 문자열은 파싱됩니다.
  2. +
  3. 인풋 값 string 이 "0"으로 시작한다면, radix 는 8(8진)이거나, 10(십진)입니다. 정확히 이 선택된 radix 는 구현 의존적적입니다. ECMAScript 5 는 10(십진)이 사용되는 것을 명시하지만, 모든 브라우저가 아직 이렇게 되지 않습니다. 이러한 이유로 항상 parseInt를 사용할 때는 radix 값을 명시해야 합니다.
  4. +
  5. 인풋 값 string 이 다른 값으로 시작 된다면, radix 는 10(십진)입니다.
  6. +
+ +

첫 번째 글자가 숫자로 변환될 수 없다면, parseIntNaN을 리턴할 것입니다.

+ +

연산의 경우, NaN 값은 어떠한 radix 숫자도 아닙니다. parseInt 값이 NaN인지 알아내기 위해 {{jsxref("isNaN")}} 함수를 호출할 수 있습니다. 만약 NaN이 산술 연산으로 넘겨진다면, 이 연산의 결과 또한 NaN이 될 것입니다.

+ +

특정 진수의 스트링 리터럴로 숫자를 변환하는 것은 intValue.toString(radix)를 사용합니다.

+ +
+

{{jsxref("BigInt")}} 주의: parseInt는 {{jsxref("BigInt")}}를 {{jsxref("Number")}}으로 변환하여 정확성을 떨어뜨립니다. 이는 "n"을 포함한 숫자가 아닌 값은 삭제되기 때문입니다.

+
+ +

radix가 없는 8진 해석

+ +

비록 ECMAScript 3 에서 권장되지 않고, ECMAScript 5 에서 금지되었지만, 많은 구현들은 0으로 시작하는 8진수 문자열을 해석합니다. 다음의 코드는 8진 결과를 가질 수도 있으며, 10진의 결과를 가질 수도 있습니다. 항상 이러한 명확하지 않은 표현은 피하고 radix를 명시하도록 합니다.

+ +
parseInt("0e0"); // 0
+parseInt("08"); // 0, '8' 은 8진수가 아니다.
+
+ +

ECMAScript 5는 8진수 해석을 삭제하였습니다.

+ +

ECMAScript 5의 parseInt 함수 스펙은 더 이상 0 으로 시작하는 8진수 값의 문자열을 다루는 구현을 허용하지 않습니다. ECMAScript 5는 다음을 발표했습니다. :

+ +

parseInt 함수는 특정 radix(진수)값에 따라 문자열 아규먼트 내용의 해석을 하고, 그 영향을 받은 정수 값을 생성합니다. 문자열 내에서 시작되는 부분에 위치한 공백은 무시됩니다. 만약 radix 값이 정의되지 않거나, 0이라면, 이것은 10진수로 여겨집니다. 0x 이나 0X 으로 시작되는 숫자 일 때는 16진수로 여겨집니다.

+ +

ECMAScript 3 와의 차이는 8진수의 해석을 허용하고 있느냐의 차이입니다.

+ +

많은 구현들이 2013부터 이 방식을 채택하고 있지 않아 왔습니다. 오래된 브라우저는 지원되어야 하기 때문에 항상 radix 값을 명시 해야합니다.

+ +

더 엄격한 파싱 함수

+ +

가끔은 int 값을 파싱할 때 더 엄격한 방식을 이용하는 것이유용합니다. 정규 표현식이 도움이 될 것입니다. :

+ +
filterInt = function (value) {
+  if(/^(\-|\+)?([0-9]+|Infinity)$/.test(value))
+    return Number(value);
+  return NaN;
+}
+
+console.log(filterInt('421'));               // 421
+console.log(filterInt('-421'));              // -421
+console.log(filterInt('+421'));              // 421
+console.log(filterInt('Infinity'));          // Infinity
+console.log(filterInt('421e+0'));            // NaN
+console.log(filterInt('421hop'));            // NaN
+console.log(filterInt('hop1.61803398875'));  // NaN
+console.log(filterInt('1.61803398875'));     // NaN
+
+ +

예제

+ +

parseInt() 사용하기

+ +

다음의 예제는 모두 15를 리턴합니다.

+ +
parseInt(" 0xF", 16);
+parseInt(" F", 16);
+parseInt("17", 8);
+parseInt(021, 8);
+parseInt("015", 10);   // parseInt(015, 10);  13이 리턴될 것입니다.
+parseInt(15.99, 10);
+parseInt("15,123", 10);
+parseInt("FXX123", 16);
+parseInt("1111", 2);
+parseInt("15*3", 10);
+parseInt("15e2", 10);
+parseInt("15px", 10);
+parseInt("12", 13);
+
+ +

다음의 예제는 모두 NaN을 리턴합니다.

+ +
parseInt("Hello", 8); // 전부 숫자가 아님.
+parseInt("546", 2);   // 숫자는 2진법 표현이 불가능함.
+
+ +

다음의 예제는 모두 -15을 리턴합니다. :

+ +
parseInt("-F", 16);
+parseInt("-0F", 16);
+parseInt("-0XF", 16);
+parseInt(-15.1, 10)
+parseInt(" -17", 8);
+parseInt(" -15", 10);
+parseInt("-1111", 2);
+parseInt("-15e1", 10);
+parseInt("-12", 13);
+
+ +

다음의 예제는 모두 4를 리턴합니다.

+ +
parseInt(4.7, 10)
+parseInt(4.7 * 1e22, 10)        // 매우 큰 숫자가 4가 됨
+parseInt(0.00000000000434, 10)  // 매우 작은 숫자가 4가 됨
+
+ +

만약 숫자가 1e+21과 같거나 큰 경우, 또는 1e-7과 같거나 작은 경우, 1을 리턴합니다.(radix가 10인 경우)

+ +
parseInt(0.0000001,10);
+parseInt(0.000000123,10);
+parseInt(1e-7,10);
+parseInt(1000000000000000000000,10);
+parseInt(123000000000000000000000,10);
+parseInt(1e+21,10);
+
+ +

다음의 예제는 모두 224를 리턴합니다.

+ +
parseInt("0e0", 16);
+
+ +

{{jsxref("BigInt")}} 는 정확성을 잃습니다.

+ +
parseInt('900719925474099267n')
+// 900719925474099300
+ +

parseInt 는 숫자구분자와 같이 작동하지 않습니다.

+ +
parseInt('123_456')
+// 123
+ +

명세

+ + + + + + + + + + + + +
Specification
{{SpecName('ESDraft', '#sec-parseint-string-radix', 'parseInt')}}
+ +

브라우저 호환성

+ +
{{Compat}}
+ +

같이 보기

+ + -- cgit v1.2.3-54-g00ecf