Number.MAX_SAFE_INTEGER (가장 큰 안전한 정수값)

개발빼-엠·2023년 9월 7일

Javascript

목록 보기
9/10
post-thumbnail

Number.MAX_SAFE_INTEGER는 자바스크립트에서 사용 가능한
"가장 큰 안전한 정수값"으로 이 값은 9007199254740991이다.

Number.MAX_SAFE_INTEGER 이란❓

여기서 "가장 큰 안전한 정수 값"이라는 용어는
자바스크립트에서 숫자는 부동 소수점 형식(floating-point format)으로 표현되는데, 부동 소수점 형식으로 표현되는 숫자 중에서 정수로 안전하게 표현할 수 있는 최대 값을 나타낸다.

그래서 9007199254740991 값을 넘어가면 부동 소수점 형식의 한계로 인해 정수 값이 정확하게 표현되지 않을 수 있고 이 값을 넘어서면 정수 값이 근사치로 표현될 수 있다.

예시 👩🏻‍💻

const MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER;
console.log(MAX_SAFE_INTEGER); // 9007199254740991

const MAX_SAFE_INTEGER_SUM = MAX_SAFE_INTEGER + 4;
console.log(MAX_SAFE_INTEGER_SUM); // 9007199254740996

위와 같이 Number.MAX_SAFE_INTEGER의 값에 4를 더했을때 9007199254740991 + 4의 값인 9007199254740995가 아닌 9007199254740996 값이 나오는 것을 확인할 수 있다.

Number.MAX_SAFE_INTEGER는 부동 소수점 형식에서 정확하게 표현할 수 있는 가장 큰 정수이지만, 그 이상의 큰 수를 표현하려고 하면 근사치로 표현되어 9007199254740996 값이 나오게 되는 것이다.

0개의 댓글