bigint
BigInt
BigInt
길이의 제약 없이 정수르 사용할 수 있게 한다.
리터럴로 정수 끝에 n 을 붙이거나 BigInt()
를 사용하면 된다.
1 | const bigint = 1234567890123456789012345678901234567890n; |
수학 연산자
일반 숫자와 큰 차이 없이 사용할 수 있다.
BigInt
형 값을 대상으로 한 연산은 BigInt
형 값을 반환한다. BigInt
형 값과 일반 숫자를 섞어서 사용할 순 없다.
1 | alert(1n + 2); // Error: Cannot mix BigInt and other types |
BigInt()
와 Number()
를 명시해 줌으로서 같이 사용할 수 있다.
1 | alert(1n + BigInt(2)); |
bigint를 정수형으로 바꾸기 위해서 +
를 사용할 수 없다. 명시적으로 Number()
를 사용해 주어야 하고, bigint 값이 너무 큰 경우는 비트는 자동으로 자렬 나간다.
비교 연산자
1 | alert(2n > 1n); // true |
비교 연산은 서로간에 가능한다.
1 | alert(1 == 1n); // true |
같은 수라도 타입이 다르기 때문에 ===
를 사욯아면 false를 반환한다.
논리 연산
if 안에서 0n 은 falsy 이고 다른 값은 truthy로 평가된다.