[JS] Number vs parseInt

또띠·2023년 8월 22일
0

JavaScript

목록 보기
20/23
post-thumbnail
post-custom-banner

이번 포스팅에서는 프로그래머스 문제를 풀다 보면 발생하는 이슈 중 하나!
바로 문자열을 숫자 타입으로 바꾸는 것이다.

뭐 Number로 감싸면 되는거 아니야? 하겠지만...
문제를 풀다보면 Number 말고도 parseInt라는 메서드로도 바꿀 수 있더라.

그래서 이번 시간에 저 두 메서드의 차이점을 알아보고 싶어서 정리를 해 보려고 한다.

💡 Number

Number()는 값을 숫자로 변환할때 사용된다.
만약 변환할 수 없는 문자열 혹은 값이 들어오면 NaN (Not-a-Number)를 반환한다.

Number('123'); // 123
Numner('넘버에 대해 알아봅시다!!!'); // NaN

💡 parseInt

parseInt()는 문자열을 정수로 반환할때 사용된다.
문자열의 앞부분부터 숫자를 찾아서 변환하고, 숫자를 만날 때까지만 변환시켜준다.

parseInt('123'); // 123
parseInt('넘버에 대해 알아봅시다!!!'); // NaN
parseInt('456넘버에 대해 알아봅시다!!!'); // 456
parseInt('넘버에 대해 알아봅시다!!!456'); // NaN

parseInt는 신기하게도 문자열의 상태에서 숫자 + 문자 조합일때 숫자만 쇽 변환을 해서 반환해 준다.

만약 4번째 예시처럼 비록 문자열 안에 숫자가 있다고 해도 맨 앞자리가 숫자가 아니기 때문에 NaN을 반환해 버린다.

따라서 문자열에서 parseInt를 사용하고 싶다면 맨 앞자리가 숫자인지를 확인해야겠다!

profile
✨ 𝑬𝒗𝒆𝒓𝒚𝒕𝒉𝒊𝒏𝒈 𝒄𝒐𝒎𝒆𝒔 𝒕𝒐 𝒉𝒊𝒎 𝒘𝒉𝒐 𝒉𝒖𝒔𝒕𝒍𝒆𝒔 𝒘𝒉𝒊𝒍𝒆 𝒉𝒆 𝒘𝒂𝒊𝒕𝒔. ✨
post-custom-banner

0개의 댓글