반응형
프로그래밍을 처음 배우면 꼭 나오는 소수점 반올림을 javascript에서는 보통 이렇게 합니다.
Math.round(123.4567 * 100) / 100
위 코드는 다음과 같은 원리로 동작합니다.
- 나타낼 소수점 아래자리 개수만큼의 10의 자승을 곱한다.(소수점 2번째 자리까지 표시한다면 10의 제곱인 100을 곱하고, 소수점 3번째 자리까지 표시한다면 10의 세제곱인 1000을 곱함)
- 입력값을 반올림한 수와 가장 가까운 정수 값을 반환하는 Math.round() 함수를 사용하여 정수로 변환한다.
- 곱했던 수 만큼 다시 나누기한다.
이렇게 하면 123.46이라는 숫자가 반환됩니다.
위의 방법보다 더 간단히 반올림할 수 있는 방법은 .toFixed()라는 메서드를 사용하는 방법입니다. 이 방법은 무려 Internet Explorer 5.5부터 사용 가능했던 함수입니다. 이 함수를 사용하는 방법은 다음과 같습니다.
123.4567.toFixed(2);
위 코드의 결과는 "123.46"이라는 숫자가 아닌 문자열입니다. 자료형의 확인은 다음과 같이 할 수 있습니다.
console.log(typeof 123.4567.toFixed(2));
따라서 ===나 !== 등으로 비교를 한다면 주의를 해야 합니다.
728x90
반응형
'front end > javascript' 카테고리의 다른 글
javascript에서 브라우저 종류 확인하는 방법 (0) | 2022.09.29 |
---|---|
javascript에서 UUID 생성하는 방법 (3) | 2022.08.04 |
javascript random number generation (1) | 2022.08.01 |
FormData를 이용한 javascript file upload (0) | 2022.06.01 |
javascript - How to get value of selected radio button? (0) | 2021.07.25 |