옝옹
냠
옝옹
전체 방문자
오늘
어제
  • 분류 전체보기 (84)
    • [LG유플러스]유레카 SW (5)
    • React (20)
    • JS (17)
    • TypeScript (5)
    • CSS & HTML (1)
    • 알고리즘 (11)
    • JAVA (20)
    • GIT (1)
    • 자격증 (4)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • switch문
  • Node.js
  • JavaScript
  • 템플릿리터럴
  • 리액트를다루는기술
  • While문
  • useState
  • java
  • 백준
  • 자바스트립트
  • 화살표함수
  • indexOf()
  • 노마드코더
  • useMemo
  • sort() 메서드
  • toFixed
  • join()
  • 타입변환
  • useEffect
  • match()
  • template literal
  • continue문
  • js
  • 자바스크립트
  • TypeScript
  • reduce
  • 타입스크립트
  • 인스턴스멤버
  • do-while문
  • reverse() 메서드
  • map() 함수
  • 자바
  • map
  • 변수선언
  • fillter
  • break문
  • 기본api클래스
  • 리액트
  • 혼자공부하는자바
  • 코드스플리팅
  • 정적멤버
  • 혼자 공부하는 자바
  • ==
  • 함수선언
  • join() 메서드
  • java.lang패키지
  • java.util패키지
  • useRef
  • 접근제한자
  • useCallback

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
옝옹

냠

JS

[JS]BigInt

2023. 1. 31. 19:46

BigInt

 Number 원시 값이 안정적으로 나타낼 수 있는 최대치인 2^53 - 1보다 큰 정수를 표현할 수 있는 내장 객체

const alsoHuge = BigInt(9007199254740991);
// ↪ 9007199254740991n

const hugeString = BigInt("9007199254740991");
// ↪ 9007199254740991n

const hugeHex = BigInt("0x1fffffffffffff");
// ↪ 9007199254740991n

const hugeBin = BigInt("0b11111111111111111111111111111111111111111111111111111");
// ↪ 9007199254740991n
BigInt Number
내장 Math 객체의 메서도와 함께 사용 불가 내장 Math 객체의 메서드와 함께 사용 가능
연산에서 Number와 혼합 사용 불가  
=> 먼저 같은 자료형으로 변환해야함.  
  • BigInt가 Number로 바뀌면 정확성을 잃을 수 있음
  • BigInt는 BigDemical이 아니므로, 연산의 결과는 언제나 소수점 이하를 버림
    • 즉, 정수가 아닌 결과는 나오지 않음
const rounded = 5n / 2n;
// ↪ 2.5n이 아니라 2n
  • BigInt는 Number와 일치하지 않지만 동등하다
0n === 0
// ↪ false

0n == 0
// ↪ true
  • BigInt와 Number는 일반적인 방법으로 비교할 수 있다.
1n < 2
// ↪ true

2n > 1
// ↪ true

2n > 2
// ↪ false

2n >= 2
// ↪ true

 

 

권장사항

  • BigInt를 Number로 변환하는 과정에서 정확도를 유실할 수 있으므로, 2^53보다 큰 값을 예상할 수 있는 경우 BigInt만 사용하는 것이 좋음
  • BigInt가 지원하는 연산의 소요시간은 상수 시간이 아니기 때문에 암호화에 적합하지 않음
저작자표시 비영리 변경금지 (새창열림)

'JS' 카테고리의 다른 글

[js] toFixed() 메서드  (0) 2023.02.05
[JS] 배열의 순서 (sort()메서드, reverse() 메서드)  (1) 2023.02.03
[JS] == , === 차이점  (0) 2023.01.18
[JS] 배열 특정 값 포함 여부(includes, indexOf, some, every)  (2) 2023.01.17
[JS] 배열에서 특정 값의 개수 구하기  (1) 2023.01.17
    'JS' 카테고리의 다른 글
    • [js] toFixed() 메서드
    • [JS] 배열의 순서 (sort()메서드, reverse() 메서드)
    • [JS] == , === 차이점
    • [JS] 배열 특정 값 포함 여부(includes, indexOf, some, every)
    옝옹
    옝옹

    티스토리툴바