데이터(정보)를 받아올 때, 우리의 예상대로만 흘러가지 않는다.
가령, 우리는 숫자를 요구했지만 문자열로 온다거나, 숫자와 문자의 합으로 온다거나(이게 결국은 문자열이지만) 다양하게 올 수 있다.
우리는 이러한 정보를 숫자로 바꾸어 줄 수 있어야 한다.
방법 네 가지.
Number() +'str' parseFloat() parseInt()
굉장히 정석적인 방법.
문자가 조금이라도 섞이면 숫자를 반환하지 못한다.
Number('123')
123
Number('123a')
NaN
Number('a123')
NaN
Number('-123')
-123
조금은 간단하고 직관적인 방법.
문자가 섞이면 역시 숫자를 반환하지 못하는 모습이다.
+ '123'
123
+ '123a'
NaN
+ 'a123'
NaN
+ '-123'
-123
문자가 조금 섞여도 숫자를 반환해주는 모습을 보인다.
그러나, 문자열로 시작을 하면 안된다.
parseInt와 다른점은 소수에서 확인할 수 있다.
parseFloat('123')
123
parseFloat('123a')
123
parseFloat('a123')
NaN
parseFloat('-123')
-123
parseFloat('123.456')
123.456
문자가 조금 섞여도 숫자를 반환해주는 모습을 보인다.
역시나, 문자열로 시작을 하면 안된다.
소수아래의 숫자들을 버리는 모습!
parseInt('123')
123
parseInt('123a')
123
parseInt('a123')
NaN
parseInt('-123')
-123
parseInt('123.456')
123