용기러기's Coding World

Javascript (1) - parseInt() vs Number() 본문

용기러기's javascript

Javascript (1) - parseInt() vs Number()

yongkis 2020. 7. 29. 22:16

안녕하세요 :D

 

오늘은 자바스크립트의 기초 문법 중

자료형 변환 메서드!

그 중에서도 자료형을 Number(숫자형 자료)로 바꿔주는 메서드

parseInt() 와 Number()에 대해서 알아보고자 합니다 :D

 

* typeof 는 대상이 되는 자료의 타입(자료형)을 리턴합니다 :D 

 

이처럼 parseInt() 와 Number() 메서드는 

공통적으로 String(문자열) 자료를 '바꿀 수 있다면', 

즉, 숫자로 이루어진 문자열과 같은 경우라면 

숫자형 자료로 바꿔주는 기능을 가지고 있습니다 :D 

 

그러나, 두 메서드에는 미묘한(?) 차이가 있는데요!

위를 보시면 쉽게 이해하실 수 있습니다

 

parseInt() 는 "30회"라는 문자열, 달리 말해, 글자가 포함된 '숫자+문자' 형태의 문자열 또한 숫자로 바꿀 수 있습니다

(자동으로 문자를 없애면서)

그러나, Number()는 "30회"라는 '숫자+문자' 형태의 문자열을 넣으면

'NaN', Not a Number 말그대로 숫자가 아니라는 NaN 을 리턴합니다.

 

이처럼 둘은 공통적으로 문자열을 숫자형 자료로 바꿔주지만

parseInt가 좀 더 강한(?) 숫자 변환 도구라고 생각해볼 수 있을 것 같습니다 :D 

 

** 그러나, parseInt도 

앞에 숫자가 아닌 문자가 오는 경우, 즉, '문자 + 숫자' 형태의 문자열의 경우 숫자로 변환하지 못하고 NaN을 출력한다는 점! 참고하세요!

 

결론은 ?

두 메서드 모두 문자열을 숫자로 변환해주는 편리한 기능을 해주지만!

parseInt가 좀 더 숫자로의 변환에 있어서

강한(?) 기능을 제공한다고 설명해볼 수 있을 것 같습니다 :D

사소하지만 두 메서드의 기능을 알고 있다면 

유용하게 쓸 수 있겠죠?:D