정밀도 손실 없이 JavaScript의 가장 높은 정수 값
JavaScript의 정수 표현 능력은 언어의 숫자 표현에 따라 결정됩니다.
번호 유형
JavaScript에서 널리 사용되는 숫자 유형은 IEEE 754를 기반으로 하는 64비트 부동 소수점 숫자입니다. 이 유형이 정밀도 손실 없이 나타낼 수 있는 가장 큰 정확한 정수 값은 Number.MAX_SAFE_INTEGER입니다.
2<sup>53</sup> - 1 = 9,007,199,254,740,991
빅인트 유형
Number.MAX_SAFE_INTEGER보다 큰 정수의 경우 JavaScript는 상한이 없는 BigInt 유형을 제공합니다.
비트 연산자
비트 연산자와 시프트 연산자는 32비트 정수에서 작동하므로 최대 안전 값이 달라집니다. 정수:
2<sup>31</sup> - 1 = 2,147,483,647
비교
안전한 정수(Number.MAX_SAFE_INTEGER 미만)는 동등 연산자를 사용하여 올바르게 비교할 수 있습니다.
const x = 9007199254740992; const y = -x; console.log(x == x + 1); // true console.log(y == y - 1); // true
그러나 Number.MAX_SAFE_INTEGER보다 큰 정수를 비교하면 예상치 못한 결과가 발생할 수 있습니다. 결과.
핵심 요약
큰 정수를 정확하게 표현하고 비교하려면 BigInt를 사용하세요. 더 작은 정수의 경우 Number 유형으로 충분하지만 비트 연산의 최대 안전 정수 값에 유의하세요.
위 내용은 정밀도를 잃지 않고 JavaScript가 표현할 수 있는 가장 높은 정수는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!