September 13, 2021
모던 자바스크립트는 숫자를 나타내는 두 가지 자료형을 지원합니다.
253
이상이거나 253
이하일 수 없다는 제약 때문에 BigInt라는 새로운 자료형이 만들어졌습니다. BigInt는 아주 특별한 경우에만 사용되므로, 별도의 챕터 BigInt에서 자세한 내용을 다루겠습니다.자, 그럼 일반적인 숫자에 대해서 자세히 알아봅시다.
16진수는 색을 나타내거나 문자를 인코딩할 때 등 다양한 곳에서 두루 쓰입니다. 다양한 곳에서 쓰이는 만큼 당연히 16진수를 짧게 표현하는 방법도 존재하겠죠. 16진수는 0x
를 사용해 표현할 수 있습니다.
예시:
alert( 0xff ); // 255
alert( 0xFF ); // 255 (대·소문자를 가리지 않으므로 둘 다 같은 값을 나타냅니다.)
2진수와 8진수는 아주 드물게 쓰이긴 하지만, 접두사 0b
와 0o
를 사용해 간단히 나타낼 수 있습니다.
let a = 0b11111111; // 255의 2진수
let b = 0o377; // 255의 8진수
alert( a == b ); // true, 진법은 다르지만, a와 b는 같은 수임
자바스크립트에서 지원하는 진법은 3개입니다. 이 외의 진법을 사용하려면 함수 parseInt
를 사용해야 합니다(챕터 후반부에서 다룸).
num.toString(base)
메서드는 base
진법으로 num
을 표현한 후, 이를 문자형으로 변환해 반환합니다.
예시:
let num = 255;
alert( num.toString(16) ); // ff
alert( num.toString(2) ); // 11111111
base
는 2
에서 36
까지 쓸 수 있는데, 기본값은 10
입니다.
base
별 유스 케이스는 다음과 같습니다.