[JavaScript] 자바스크립트 어림수 계산하기 (반올림, 올림, 버림)
2022. 5. 10. 22:34ㆍProgram/JavaScript
021_어림 계산하기 (반올림, 올림, 버림)
[적용]
- 소수점을 버리는 계산을 할 때
- 화면 크기를 정수로 조절할 때
[문법]
메소드 | 의미 | 반환 |
Math.round(값) | 반올림하기 | 숫자 |
Math.floor(값) | 버림하기(값보다 작고 제일 가까운 정수 반환) | 숫자 |
Math.ceil(값) | 올림하기(값보다 크고 제일 가까운 정수 반환) | 숫자 |
Math.trunc(값) | 값의 정수 부분만을 반환 | 숫자 |
어림 계산은 위의 메소드를 사용하며, 다음을 참고해 사용방법을 익혀보자
Math.round(6.24); // 결과: 6
Math.floor(6.24); // 결과: 6
Math.ceil(6.24); // 결과: 7
Math.trunc(6.24); // 결과: 6
Math.round(7.8); // 결과: 8
Math.floor(7.8); // 결과: 7
Math.ceil(7.8); // 결과: 8
Math.trunc(7.8); // 결과: 7
Math.round()는 다음과 같이 작동한다.
- 소수점이 0.5 이상이면 올림(값 이상 최소의 정수로 반환)
- 소수점이 0.5 미만이면 내림(값 이하 최대의 정수로 반환)
다음은 Math.round()의 음의 값 처리를 확인해 보자.
Math.round(-7.49); // 결과: -7 (소수점이 0.5 이상이므로 올림 처리)
Math.round(-7.5); // 결과: -7 (소수점이 0.5 이상이므로 올림 처리)
Math.round(-7.51); // 결과: -8 (소수점이 0.5 미만이므로 내림 처리)
Math.floor()와 Math.ceil()은 다음과 같이 작동한다.
- Math.floor(값): 값 이하 최대의 정수값을 반환
- Math.ceil(값): 값 이상 최소의 정수값을 반환
인수가 음의 값이 경우는 다음과 같이 처리한다.
Math.floor(-8.6); // -8.6 이하 정수의 최대값인 -9을 반환
Math.ceil(-8.6); // -8.6 이상 정수의 최소값인 -8을 반환
Math.trunc()는 음과 양에 상관없이 정수 부분만을 반환한다.
Math.trunc(-8.6); // 정수 부분 -8 반환
[예시]
document.querySelector('.result1').innerHTML = Math.round(6.24); // 결과: 6
document.querySelector('.result1').innerHTML = Math.ceil(6.24); // 결과: 7
document.querySelector('.result1').innerHTML = Math.floor(6.24); // 결과: 6
document.querySelector('.result1').innerHTML = Math.trunc(6.24); // 결과: 6
document.querySelector('.result1').innerHTML = Math.round(-7.49); // 결과: 7
document.querySelector('.result1').innerHTML = Math.ceil(-7.49); // 결과: 7
document.querySelector('.result1').innerHTML = Math.floor(-7.49); // 결과: 8
document.querySelector('.result1').innerHTML = Math.trunc(-7.49); // 결과: 7
출처:
실무에 바로 적용하는 자바스크립트 코드레시피 278
아케다 야스노부, 카노 타케시 지음 / 이춘혁 옮김
'Program > JavaScript' 카테고리의 다른 글
[JavaScript] 자바스크립트에서 수학(계산) 함수 사용하기 (0) | 2022.05.12 |
---|---|
[JavaScript] 자바스크립트 임의의 수(random number) 다루기 (0) | 2022.05.11 |
[JavaScript] 자바스크립트에서 숫자 다루기 (0) | 2021.05.05 |
[JavaScript] 자바스크립트에서 진위 여부(true or false) 판별하기 (Boolean) (0) | 2021.05.05 |
[JavaScript] 자바스크립트 반복 처리 스킵 (continue) (0) | 2021.05.05 |