JavaScript에서 큰 숫자에 대한 과학적 표기법 방지
JavaScript는 21자리를 초과하는 정수가 문자열에 포함될 때 과학적 표기법으로 변환하는 것으로 악명이 높습니다. 이러한 값을 URL이나 다른 컨텍스트의 일부로 인쇄할 때 문제가 될 수 있습니다. 어떻게 이 변환을 회피하고 원래 값을 유지할 수 있습니까?
직접 솔루션 구축:
JavaScript에는 이러한 목적을 위해 특별히 설계된 내장 메소드가 없지만, 이를 처리하기 위해 자체 함수를 만들 수 있습니다. 사용자 정의 구현은 다음과 같습니다.
function toFixed(x) { if (Math.abs(x) < 1.0) { var e = parseInt(x.toString().split('e-')[1]); if (e) { x *= Math.pow(10,e-1); x = '0.' + (new Array(e)).join('0') + x.toString().substring(2); } } else { var e = parseInt(x.toString().split('+')[1]); if (e > 20) { e -= 20; x /= Math.pow(10,e); x += (new Array(e+1)).join('0'); } } return x; }
BigInt 활용:
JavaScript의 최신 버전은 큰 정수를 나타내는 기본 유형인 BigInt를 지원합니다. BigInt를 사용하면 과학적 표기법 없이 숫자를 문자열로 변환하는 간단한 방법을 제공합니다.
let n = 13523563246234613317632n; console.log(n.toString()); // Output: "13523563246234613317632"
참고: BigInt는 아직 개발 중이므로 보편적으로 지원되지 않을 수 있습니다. 이전 브라우저와의 호환성이 필요한 경우 JavaScript BigInt 라이브러리 사용을 고려해보세요.
위 내용은 JavaScript가 큰 숫자를 과학적 표기법으로 변환하지 못하도록 하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!