

e뒤에3을 붙이면 0 3개가 뒤에 붙는다
1e3은 그래서 1000과 같음

반대로 e뒤에 -숫자를 붙이면 왼쪽으로 숫자만큼 소숫점 이동함
그래서 1e-6은 0.000001과 같음
16진수 표현 방법

2진수 , 8진수 표현 방법

표현 방법은 다르지만 수는 같으니까 같다고 나옴(신기)
num.toString(base) 에서 base는 몇 진수인지를 나타낼지를 의미 함.

숫자 255를 base진법으로 표현한 후, 이를 문자형으로 변환해 버림.
base의 default값은 10이다.
base에 넣을 수 있는 수는 2~36까지인데,
base=36 (36진수) 활용
36진수의 경우 알파벳 전체가 숫자를 나타내는 데 사용된다.
url을 줄이는것과 비슷하게 숫자로 된 긴 식별자를 짧게 줄일 때 사용함

toFixed는 가장 가까운 값으로 올림 혹은 버림해주고 , 문자열로 반환함.


toFixed를 이용하고 나서 다시 넘버타입으로 바꿔주면
숫자타입으로 쓸 수 있다.
무한 소수를 방지 하는데 toFixed가 쓰인다??

0.1 + 0.2 는 당연히 0.3일줄 알고 계산해봤더니, 이런 숫자가 나온다.
이렇게 나오는 이유는 0.1과 같은 숫자는 2진수로 변환되어 메모리에 저장이 되는데,
소숫점은 2진수로 표현하면 무한소수가 된다.
그래서 저런 결과가 나오는데, 저 현상을 해결해줄 수 있는게 toFixed임

이렇게 활용하면 무한 소수를 방지 할 수 있음.
isNaN(value) value를 Number타입으로 변환 후 , NaN인지 테스트 하는 메서드임

Number 타입으로 바꿔서 NaN가 안나오면 isNaN은 false를 반환함

반대로 Number 타입으로 바꿔서 NaN이 나오면 true를 반환함
isFinite(value) value를 숫자로 변환하고 ,
변환한 숫자가 NaN , Infinity , -Infinity 가 아닌 일반 숫자인 경우
true를 반환함
문자열이 일반 숫자인지 검증하는데 사용되기도 함.(isNaN이랑 비슷함)

주의 해야 할 점

이렇게 빈 문자열이나 공백만 있는 문자열은 inFinite를 포함한 모든 숫자 관련
내장 함수에서 0으로 취급됨. 그래서 저렇게 넣으면 true가 나옴
Object.is메서드는 ===보다 더 신뢰할만할 결과를 보여줌.

비트가 모두 0이더라도 부호를 나타내는 비트는 다르므로
0과 -0은 사실 다른 값이긴 함.

근데 보통 0 === -0은 true로 나옴
이런식의 비교는 자바스크립터 명세서에 SameValue라고 나와있음.
Object.is는 비교 결과가 엄밀하게 정확해야 하는 경우 쓰임.
'19€ , '100px' , '12pt' 문자열 안에 정수인 숫자가 있을 경우
parseInt로 정수만 걸러 낼 수 있다.
'12.5em' , 12.3.4 문자열 안에 실수인 숫자가 있을 경우
parseFloat로 실수만 걸러 낼 수 있다.

문자를 만나기 전까지만 변환해준다.

parseInt(str , radix) 두번째 인수로
16진수, 2진수, 36진수 등등 문자열을 파싱할수 있음.
