[JavaScript] Math 메소드 정리

realzu·2022년 7월 17일
1

💛 about JavaScript

목록 보기
5/24
post-thumbnail

🔎 Math 함수

Math 메소드는 자바스크립트의 표준 내장 객체로서 수학적인 작업들을 편리하게 하기 위해 사용된다. 통계, 계산 등에서 유용하게 사용될 수 있다. 그럼 Math 객체의 메소드들을 알아보겠다.

📍 Math.ceil() : 올림 / Math.floor() : 내림

let num1 = 5.1;
let num2 = 5.7;

Math.ceil(num1); //6
Math.ceil(num2); //6

Math.floor(num1); //5
Math.floor(num2); //5

ceil()은 올림, floor()은 내림 기능을 한다. 소수점 자릿수에 상관없이 소수 자리의 값이 있다면 올리거나 내린다.

📍 Math.round() : 반올림 / toFixed()

Math.round(num1); //5
Math.round(num2); //6

round()는 소수점 자리의 값에 따라 반올림을 한다.

만약 소수점 둘째 자리까지 표현할 것이며, 소수점 셋째 자리에서 반올림을 원할 경우 toFixed() 메소드를 사용할 수 있다.

let userRate = 30.1234;
Number(userRate.toFixed(2));

괄호 안에는 표현할 소수점 자릿수를 말한다. 0이면 없다는 것이므로 정수만 출력되고 2이면 소수점 둘째짜리까지 함께 출력된다. 다만 주의할 점은 문자열을 반환하기 때문에 숫자형으로 변환해야 한다.

📍 Math.random() : 랜덤

Math.random()

0에서 1 사이의 무작위 숫자를 생성한다. 계속 실행할 때마다 새로운 값이 생성되는 것을 볼 수 있다. 말 그대로 랜덤으로 생성된다.

만약 1부터 100 사이의 임의의 숫자를 뽑고 싶다면 어떻게 해야 할까?

Math.floor(Math.random() * 100) + 1

floor() 메소드를 함께 활용하여 해결할 수 있다. 단계별로 값이 진행되는 순서를 알아보겠다.

  1. Math.random() = 0.6789
  2. Math.random() * 100 = 67.89
  3. Math.floor(Math.random() * 100) = 67
  4. Math.floor(Math.random() * 100) + 1 = 68

마지막에 1을 더해주는 이유는 0이 나올 경우를 대비하기 위함이다. 결과적으로 1~100 사이의 숫자 중 68이 나왔다.

📍 Math.max() : 최댓값 / Math.min() : 최솟값

각각 가지고 있는 값들 중 최대 혹은 최솟값 하나를 구하는 것이다.

Math.max(1, 4, 10, -1, 2.24) // 10
Math.min(1, 4, 10, -1, 2.24) // -1

같은 숫자들 중에서 max()를 통해 10, min()을 통해 -1이 출력된다. 가장 큰 값과 가장 작은 값이 나오게 된다.

📍 Math.abs() : 절댓값

abs란 absolute의 약자이다. 절대값을 구하는 메소드이다.

Math.abs(-1) // 1

-와 상관없이 절댓값인 1이 출력된다.

📍 Math.pow(n, m) : 제곱

pow는 power의 약자로, 제곱한 값을 구한다.

Math.pow(2, 10); // 1024

2의 10승 (=2^10)을 구하는 것이다. 2를 10번 거듭제곱한 1024가 반환된다.

📍 Math.sqrt() : 제곱근

sqrt란 square root의 약자로, 제곱근을 한 값을 구한다.
인자에 음수가 담겼다면 NaN을 반환한다.

Math.sqrt(16); // 4
Math.sqrt(2); // 1.414213562373095
Math.sqrt(-1); // NaN

코딩앙마의 자바스크립트 중급 강좌 수강 후 정리한 글입니다.

profile
부딪히지 않으면 아무 일도 일어나지 않는다 👊

0개의 댓글