2017-03-06 1 views
1

숫자는 물론 전역 변수 창에서 찾을 수 있습니다.parseInt와 parseFloat가 왜 두 곳입니까?

이유가 있습니까?

별칭입니까?

글로벌 구현 -으로 parseInt

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/parseInt

번호 구현

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/parseInt

번호 구현 -으로 parseInt

+0

모든 이러한 3 가지 방법 (Number'''parseInt''parseFloat')는 서로 다른 의미를 갖는다. – MinusFour

+0

'Number.parseInt'와'window.parseInt'에서 명백한 차이점을 보지 못했습니다. 둘 다 문자열 뒤에 선택적인 기수를 붙입니다. 'window.parseInt'는이 매개 변수가 필수가 아니므로 선택 사항임을 보여 주어야하기 때문에이 점에있어서 문서는 다소 부정확합니다. –

+0

죄송합니다. 원본 게시물을 잘못 읽었습니다. [그들은 둘 다 동일합니다.] (https://tc39.github.io/ecma262/#sec-number.parsefloat) – MinusFour

답변

1

인 ECMAScript의 초기 정의는 글로벌 이름에 parseInt()parseFloat() 정의 보류.

그러나 글로벌 네임 스페이스를 오염시키는 것은 안티 패턴 이었기 때문에 ECMAScript 2015 (6 판)에서 Number 개체로 옮겼습니다.

하위 호환성을 위해 두 메서드는 여전히 전역 네임 스페이스에 있습니다.

ECMAScript를 6 http://www.ecma-international.org/ecma-262/6.0/#sec-number.parseint

+1

Infinity와 같이 보이지만 양수 값과 음수 값도 "더 이상 사용되지 않습니다."- 숫자도 마찬가지입니다. –

+0

@brannonteer 고마워, 그걸 몰랐어. – subwaymatch

관련 문제