320x100
320x100

BigInt

: 길이의 제약 없이 정수를 다룰 수 있게 하는 숫자형

: 정수 리터럴 끝에 n을 붙이거나 BigInt를 호출하여 사용

: 문자열이나 숫자를 가지고 BigInt 타입의 값을 만들 수 있음

const bigint = 1234567890123456789012345678901234567890n;

const sameBigint = BigInt("1234567890123456789012345678901234567890");

const bigintFromNumber = BigInt(10); // 10n과 동일합니다.

 

 

 

수학연산자와의 사용

: 대개 일반 숫자와 큰 차이 없이 사용 가능

alert(1n + 2n); // 3

alert(5n / 2n); // 2

 

alert(1n + 2); // Error: Cannot mix BigInt and other types

: BigInt형 값과 일반 숫자를 섞어서 사용은 불가

 

let bigint = 1n;
let number = 2;

// 숫자를 bigint로
alert(bigint + BigInt(number)); // 3

// bigint를 숫자로
alert(Number(bigint) + number); // 3

: 일반 숫자와 사용하기 위해서는 BigInt()나 Number()를 사용해 명시적으로 형변환을 해야함

: BigInt는 숫자형에서 허용하는 자릿수를 넘으면 나머지 비트는 자동으로 잘려나가므로 주의

 

 

 

※ 단항 덧셈 연산자는 BigInt에서 사용불가

let bigint = 1n;

alert( +bigint ); // 에러

 

 

 

비교 연산자

alert( 2n > 1n ); // true

alert( 2n > 1 ); // true

alert( 1 == 1n ); // true

alert( 1 === 1n ); // false

 

 

 

논리연산

if (0n) {
  // 절대 실행되지 않습니다.
}


alert( 1n || 2 ); // 1 (1n은 truthy로 판단됩니다.)

alert( 0n || 2 ); // 2 (0n은 falsy로 판단됩니다.)

 

 

 

 

 

Refference

 

BigInt

 

ko.javascript.info

 

300x250
728x90