BigInt
Number의 원시 값이 안정적으로 나타낼수 있는 최대치인 2^53 -1보다 큰 정수를 표현할 수 있는 내장 객체
BigInt는 정수 리터럴의 뒤에 n을 붙이거나 함수 BigInt()를 호출해 생성할 수 있음
const ExBigInt = 9007199254740991n;
const ExBigInt2 = BigInt(9007199254740991);
BigInt는 Number과는 다르게 Math 객체의 메서드와 함께 사용할 수 없음
또한 연산에서 Number과 혼합해 사용할 수 없음
또한 연산의 결과는 언제나 소수점 이하를 버려 정수가 아닌 결과는 나오지 않음
자료형
BigInt의 typeof 판별 결과는 'bigint'임
typeof 1n === "bigint"; // true
typeof BigInt("1") === "bigint"; // true
비교
BigInt는 Number과 일치하지 않지만 동등함
0n === 0; //false
0n == 0; //true
일반적인 방법으로 비교할 수 있음
1n < 2; //true
2n > 1; //true
2 > 2; //false
2n > 2; //false
2n >= 2; //true
정렬도 가능
const mixed = [4n, 6, -12n, 10, 4, 0, 0n];
mixed.sort(); //[-12n, 0, 0n, 10, 4n, 4, 6]
'JS' 카테고리의 다른 글
JS, use strict / undeclared (0) | 2023.10.31 |
---|---|
JS, 소수점 오류 (0) | 2023.10.21 |
JS, 모든 문자열 치환(replace, replaceAll) (1) | 2023.10.17 |
JS, 배열 비교 (0) | 2023.10.12 |
JS, 내장함수를 이용한 숫자/날짜의 현지화 (0) | 2023.07.08 |
댓글