Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript Math.trunc() 메서드 완벽 정리: 소수점을 잘라내는 가장 확실한 방법

Math.trunc() 메서드란?

JavaScript의 Math.trunc() 메서드는 Math.floor(), Math.ceil(), Math.round()와는 다르게 동작합니다. 이 메서드는 숫자의 소수 부분(fractional part)을 잘라내고 오직 정수 부분만 반환합니다.

가장 큰 특징은 반올림(rounding)을 전혀 수행하지 않는다는 점입니다. 값이 양수인지 음수인지도 판단하지 않으며, 단순히 소수점 이하를 잘라내는 역할만 담당합니다.

문법(Syntax)

Math.trunc(x);

매개변수(parameters) - Math.trunc()는 숫자를 인자로 받아 해당 값의 소수 부분을 잘라냅니다(truncate).

양수에 적용한 예제

다음 예제에서 Math.trunc() 메서드는 주어진 양수들의 소수 값을 잘라내고 정수 부분만 출력합니다.

예제 코드

<html>
<body>
<script>
   var val1 = Math.trunc("1.414");
   var val2 = Math.trunc("0.49");
   var val3 = Math.trunc("8.9");
   document.write(val1);
   document.write("</br>");
   document.write(val2);
   document.write("</br>");
   document.write(val3);
</script>
</body>
</html>

실행 결과

1
0
8


음수에 적용한 예제

다음 예제에서는 Math.trunc() 함수가 음수의 소수 값들을 잘라내고 정수 값만 화면에 출력합니다. 음수의 경우에도 반올림 없이 소수점 이하를 그대로 제거한다는 점에 주목하세요.

예제 코드

<html>
<body>
<script>
   var val1 = Math.trunc("-1.414");
   var val2 = Math.trunc("-0.49");
   var val3 = Math.trunc("-8.9");
   document.write(val1);
   document.write("</br>");
   document.write(val2);
   document.write("</br>");
   document.write(val3);
</script>
</body>
</html>

실행 결과

-1
0
-8

다른 Math 메서드와의 차이점

Math.floor()는 소수점 이하를 내림하고, Math.ceil()은 올림하며, Math.round()는 가장 가까운 정수로 반올림합니다. 반면 Math.trunc()는 방향과 상관없이 소수점 이하를 단순히 제거하기 때문에, 숫자를 0을 향해 자른다고 표현할 수 있습니다. 예를 들어 -8.9에 대해 Math.floor()-9를 반환하지만, Math.trunc()-8을 반환합니다.