프로그램를 사용하다보면 특정 연산에 따라 소숫점이 과하게 길어지면
미관상 보기도 안좋고, 메모리에 자리수가 과하게 할당되어 관리적 측면에서도 안좋거니와
예상하지 못한 오류가 발생할 수도 있다.
그러므로 그런 현상을 방지 하기 위해 몇가지 방법을 적겠다.
- Math 함수 활용
1) 소숫점 셋째자리에서 내림 (floor)
const test = Math.floor(3.457 * 100) / 100;
console.log('소수점 셋째자리에서 내림 : ',test); // 결과 3.45
2) 소숫점 셋째자리에서 올림 (ceil)
const test = Math.ceil(3.458 * 100) / 100;
console.log('소수점 셋째자리에서 올리기 : ',test); // 결과 3.46
3) 소숫점 셋째자리에서 반올림 (round)
const test = Math.ceil(3.455 * 100) / 100;
console.log('소수점 셋째자리에서 반올림 : ',test); // 결과 3.46
가끔 반올림하는 경우를 헷갈려 하시는 경우가 있는데, 0~4는 올리지 않고 5부터 올린다.
Math 함수뒤에 100으로 나누는데, 이유는 Math 함수내에서는 소수점 자릿수를 부여할 수가 없고
일의자리까지 올림/반올림/내림처리를 하기 때문에 소숫점을 없애기 위해 100을 곱하고
다시 외부에서 100으로 나누어 올바른 소숫점 처리를 하게끔 하기 위함이다.
2.toFixed 활용
1) 반올림만 가능
var test= 100.5376; console.log(test.toFixed(3)); // 결과 : 100.538
Math 함수와는 다르게 한가지 문법으로 반올림/올림/내림이 가능하지만,
Math 함수는 대상의 값이 무엇이든 강제로 올리거나 강제로 내림, 반올림이 가능하지만
toFixed()의 경우 대상의 값을 보고 반올림으로만 처리한다.
그 외 지수표기법으로 표기하는 방식도 있고 다른 방법이 있지만
자주 표기하는 법만 명시해봤다.
'JS' 카테고리의 다른 글
[JS]천원단위 콤마(,)정규 표현식 (0) | 2025.02.10 |
---|---|
[JS]사업자 등록번호 정규표현식에 대해 알아보자 (0) | 2025.02.10 |
[JS]금액을 한글로 표기해보자 (0) | 2025.02.10 |
JS 날짜 라이브러리중 Moment.js에 대해 알아보자 (0) | 2025.02.10 |
모바일브라우저에서 onClick이 안될 때 (0) | 2025.02.10 |