parseInt(), parseFloat(), Number() 함수 모두
입력한 값을 number값으로 변환해준다는 공통점이 있다.
하지만 각자 미묘한 차이점을 가진다.
아래에서 알아보자.
parsInt()
-> 입력한 값에 문자열이 있어도 숫자로 변환해준다.
하지만 소숫점은 떼버린다.
ex) parseInt('36.5도') // 36
parsFloat()
-> 입력한 값에 문자열이 있어도 숫자로 변환해준다.
소숫점도 함께 출력한다.
ex) parseInt('36.5도') // 36.5
Number()
-> 입력한 값에 문자열이 있으면 NaN값을 반환한다.
숫자만 있을때 숫자로 반환.
소숫점도 함께 출력한다.
ex) Number('36.5도') // NaN
ex) Number('36.5') // 36.5
ex) parseInt('약36.5') // NaN
ex) parseFloat('약36.5') // NaN
number에 문자열이 있을땐 말할 것도 없이 NaN이다.
정리해보면
let num = '36.5';
parseInt(num); // 36
parseFloat(num); // 36.5
Number(num); // 36.5
let num = '36.5도'
parseInt(num); // 36
parseFloat(num); // 36.5
Number(num); // NaN
let num = '약36.5'
parseInt(num); // NaN
parseFloat(num); // NaN
Number(num); // NaN
위와 같이 결과가 나오는걸 확인할 수 있다.