자바스크립트에서 소숫점 아래 자리수 제한하기
dev | 2019-02-23
숫자 소수점 아래 몇째 자리까지 표현하라는 문제는 프로그래밍 처음 배울때 많이 봤다. 나타낼 소수점 아래자리 갯수 만큼 10의 자승을 곱해서 정수부로 올리고, 소숫점 아래를 반올림하고, 다시 곱했던 수를 나눈다. 당연히 이 방법만 있는 줄 알고 계속 이렇게 해왔다.
Math.round(123.4567 * 100) / 100; // 123.46
자바스크립트에서도 이렇게 쓰고 있었는데 뭔가 찾아보다가 .toFixed()
라는 메서드가 있다는 것을 발견했다. 최근에 추가된건가 하고 봤더니 무려 ECMA 3rd, Javascript 1.5 스펙이다.
123.4567.toFixed(2); // "123.46"
이렇게 쓰면 된다. 차이점이 있다면 반환 형식이 문자열이다. 비슷한 메서드로 .toExponential()
, .toPrecision()
이 있고 많이 사용되는 .toString()
도 있다.
역시 끊임없이 찾아보고 공부해야 되는구나.
Comments