Math.trunc()와 Math.floor()는 둘 다 소수를 다룰 때 사용되는 메서드이다.
그러나 이 두 메서드는 동작의 차이가 있다.
Math.trunc()
Math.trunc() 메서드는 주어진 숫자의 소수점 이하를 제거하고 정수 부분만 반환한다.
console.log(Math.trunc(5.05));
// Expected output: 5
console.log(Math.trunc(-5.99));
// Expected output: -5
양수, 음수 상관없이 정수를 반환한다.
예를 들어, Math.trunc(5.05)는 5를 반환하고, Math.trunc(-5.99)는 -5를 반환한다.
Math.floor()
Math.floor() 메서드는 주어진 숫자의 소수를 버리고 그 숫자보다 작거나 같은 가장 큰 정수를 반환합니다.
console.log(Math.floor(5.05));
// Expected output: 5
console.log(Math.floor(-5.99));
// Expected output: -6
예를 들어, Math.floor(5.05)는 5를 반환하고, Math.floor(-5.99)는 -6을 반환한다.
-3.2
|----|----|----|----|----|----|----|----|
-4 -3 -2 -1 0 1 2 3 4
또 다른 예를 들어보면, -3.2에서 소수 0.2를 버리고 해당 숫자보다 작거나 같은 가장 큰 정수를 찾아보면 -4가 된다.
왜냐하면 -4가 -3.2보다 작거나 같은 가장 큰 정수이기 때문이다.
정리.
Math.trunc()는 소수를 버린 정수를 반환하고, Math.floor()는 소수를 버린 정수보다 작거나 같은 가장 큰 정수를 반환한다.
'Language > JavaScript' 카테고리의 다른 글
[JavaScript] 전개 연산자(...) 이해하기, 예제코드 (1) | 2024.01.11 |
---|---|
[JavaScript] Array.reduce() 배열의 합계, 평균 (0) | 2024.01.10 |
[JavaScript] Callback Function|콜백함수 동기,비동기 (0) | 2023.07.27 |
[JavaScript] for문을 이용해서 배열로 변환 (0) | 2023.07.27 |
[JavaScript] 논리 연산 logical operators 주의할 점 (0) | 2023.07.26 |