JavaScript - 소수점 자리수 올림, 내림, 반올림, 제거 방법

By JS | Last updated: April 09, 2022

자바스크립트에서 소수점 이하 값을 갖고 있는 실수를 올림, 내림, 반올림 하는 방법과 소수점 자리수 몇번째 이후의 숫자는 제거하는 방법을 소개합니다.

1. Math의 ceil(), floor(), round() 함수로 소수점 이하 올림, 내림, 반올림

Math는 다음 함수들을 제공하고 있습니다.

  • Math.ceil() : 소수점 이하 숫자를 올림하여 정수를 리턴합니다.
  • Math.floor() : 소수점 이하 숫자를 버림하여 정수를 리턴합니다.
  • Math.round() : 소수점 이하 숫자를 반올림하여 정수를 리턴합니다.

1.1 Math.ceil() 예제

Math.ceil()으로 소수점 이하의 숫자를 올림하는 예제입니다.

const num1 = 1.1234;
const num2 = 12.5678;
const num3 = 123.5678;

console.log(Math.ceil(num1));   // 2
console.log(Math.ceil(num2));   // 13
console.log(Math.ceil(num3));   // 124

1.2 Math.floor() 예제

Math.floor()으로 소수점 이하의 숫자를 버림하는 예제입니다.

const num1 = 1.1234;
const num2 = 12.5678;
const num3 = 123.5678;

console.log(Math.floor(num1));   // 1
console.log(Math.floor(num2));   // 12
console.log(Math.floor(num3));   // 123

1.3 Math.round() 예제

Math.round()으로 소수점 이하의 숫자를 반올림하는 예제입니다.

const num1 = 1.1234;
const num2 = 12.5678;
const num3 = 123.5678;

console.log(Math.round(num1));   // 1
console.log(Math.round(num2));   // 13
console.log(Math.round(num3));   // 124

2. Number.toFixed()로 소수점 자리수 제거(n자리로 반올림)

Number.toFixed(n)는 숫자를 소수점 n자리로 반올림합니다. n자리 이후의 숫자를 제거할 수 있습니다.

const num1 = 1.1234;
const num2 = 12.5678;
const num3 = 123.5678;

console.log(num1.toFixed(2));   // 1.12
console.log(num2.toFixed(2));   // 12.57
console.log(num3.toFixed(2));   // 123.57

3. round()를 이용하여 소수점 n자리로 반올림

아래 예제는 소수점 2자리로 반올림하는 예제입니다. 100을 곱한 숫자를 round()로 반올림하고, 100으로 나누면 소수점 2자리로 반올림한 것처럼 됩니다. n자리수로 반올림하려면 10^n를 곱하고 나누시면 됩니다.

let num = 1.1234
let result = Math.round(num * 100) / 100;
console.log(result);  // 1.12

num = 12.5678
result = Math.round(num * 100) / 100;
console.log(result);  // 12.57

num = 123.5678
result = Math.round(num * 100) / 100;
console.log(result);  // 123.57

4. 소수점 n자리로 올림 또는 버림

위의 소수점 n자리 반올림 예제와 동일한 방식으로, ceil(), floor()를 사용하여 아래와 같이 구현하시면 됩니다.

let num = 1.1234
let result = Math.ceil(num * 100) / 100;
console.log(result);  // 1.13

num = 12.5678
result = Math.floor(num * 100) / 100;
console.log(result);  // 12.56

References

Loading script...

Related Posts

codechachaCopyright ©2019 codechacha