자바스크립트에서 소숫점 지수 함수를 표현할 때 toExponential() 메서드를 사용한다. 지수는 기하급수적인 큰 수를 표현하기 위해 사용한다. 과거 메모리에 대한 관심이 있을 때 지수와 관련된 메서드는 꽤나 유용한 도구였다. 지금은 거의 잘 사용하지 않지만, 수학이나 수를 계산하는 업종의 경우 자주 사용될 수 있다.
자바스크립트 지수 문자열 기하급수적 숫자 표현
javascript to Exponential method
소숫점 자리수가 많아질 경우 계산의 난해한 부분들이 생길 수 있다.
과거 자바스크립트가 처음 나왔을 때 메모리 또한 관심의 대상이었다.
그렇기에 지금도 남아있는 것들이 지수와 관련된 것들이다.
일반적으로 처리하기 힘든 수를 지수로써 표현하고 나머지 수들을 더하는 방식등이 그것이었다.
지금과 같이 하드웨어의 성능이 높은 상태에서 일반적인 경우에 사용되지 않는다.
기하급수적인 지수 표현
소수점 이하의 수가 필요이상으로 높아질 경우 난처할 경우가 있다.
지수를 사용하면 데이터베이스의 용량도 줄어들 수 있다.
굳이 이럴 필요가 있냐? 라고 물으신다면 조금만 생각해 보자.
어쨌든 소숫점이하 지수의 표현은 다음과 같다.
Number.toExponential(자릿수)
샘플코드
소숫점 이하 지수를 표현하기 위해 위의 코드를 사용하도록 한다.
역시나 코드는 길어보이지만 toExponential() 메서드만 보면 된다.
<!DOCTYPE html>
<html>
<body>
<h2>자바스크립트 숫자형</h2>
<div id="cont">
<p id="ret1"></p>
<p id="ret2"></p>
<p id="ret3"></p>
<p id="ret4"></p>
<p id="ret5"></p>
</div>
<script>
console.log("----------");
let vNum = 100;
let vExp;
vExp = vNum.toExponential(1);
console.log(typeof(vExp), vExp);
document.getElementById("ret1").innerText = vExp;
vExp = vNum.toExponential(3);
console.log(typeof(vExp), vExp);
document.getElementById("ret2").innerText = vExp;
vExp = vNum.toExponential(5);
console.log(typeof(vExp), vExp);
document.getElementById("ret3").innerText = vExp;
vExp = vNum.toExponential(7);
console.log(typeof(vExp), vExp);
document.getElementById("ret4").innerText = vExp;
vExp = vNum.toExponential(9);
console.log(typeof(vExp), vExp);
document.getElementById("ret5").innerText = vExp;
console.log("----------");
</script>
</body>
</html>
결과화면을 보자.
인자값으로 들어간 숫자만큼 0이 증가하는 것을 알 수 있다.
이것만 봐도 쓰임새가 많아 보인다.
숫자를 많이 다르는 프로그램의 경우 요긴하게 사용될 수 있다.
반응형
'programming > javascript' 카테고리의 다른 글
자바스크립트 숫자형 자리수 지정 toPrecision 메서드 사용 (0) | 2021.12.05 |
---|---|
자바스크립트 소숫점 고정 toFixed() 메서드 사용하기 using javascript tofixed method (0) | 2021.12.04 |
자바스크립트 숫자 문자 변환 메서드 toString javascript number toString method (0) | 2021.12.02 |
자바스크립트 숫자 객체 관계 javascript number object (0) | 2021.12.01 |
자바스크립트 16진수 표현과 toString 메서드 javascript hexadecimal and toString() (0) | 2021.12.01 |
댓글