코딩 테스트 문제를 풀다보면 큰 숫자를 다룰 때가 있다.
자바스크립트는 최대 9007199254740991까지 정확한 숫자를 다룰수 있다
아래 코드를 실행시켜 보면 결과를 다르게 나타나 있다.
console.log(9007199254740991 + 10);
console.log(9007199254740991 + 20);
console.log(9007199254740991 + 30);
해결법(결론)
BinInt를 사용해주는 것이다.
사용법은 BigInt(숫자나 문자)처럼 사용해주거나 1231231231n처럼 마지막에 n 을 붙여주면 된다.
console.log(9007199254740991n + 10n);
console.log(9007199254740991n + 20n);
console.log(9007199254740991n + 30n);
주의점
BigInt를 사용할 때는 BigInt끼리만 연산을 해줘야한다. 만약 BigInt + Number 처럼 1n + 1을 해주면 오류가 발생한다.
console.log(9007199254740991n + 10);
'언어 > 자바스크립트' 카테고리의 다른 글
클로저(Closures) (1) | 2024.02.21 |
---|---|
실행 컨텍스트(렉시컬 스코프, 렉시컬 환경, 스코프 체인, 호이스팅) 이 글로 끝내버리기 (0) | 2023.05.13 |
자바스크립트 This 이걸로 끝내기 (0) | 2023.03.28 |
Iteration Protocol(for of, spread) (0) | 2023.03.21 |
이벤트 캡처링과 버블링 (0) | 2023.03.06 |