표준 빌트인 객체인 Math는 수학적인 상수와 함수를 위한 프로퍼티와 메서드를 제공한다. Math는 생성자 함수가 아니다. 따라서 Math는 정적 프로퍼티와 정적 메서드만 제공한다.
Math.PI
원주율 PI 값(3.141592653589793)을 반환한다.
Math.PI; // -> 3.141592653589793
Math.abs
- Math.abs 메서드는 인수로 전달된 숫자의 절대값absolute value을 반환한다. 절대값은 반드시 0 또는 양수이어야 한다.Math.abs(-1); // -> 1
Math.abs('-1'); // -> 1
Math.abs(''); // -> 0
Math.abs([]); // -> 0
Math.abs(null); // -> 0
Math.abs(undefined); // -> NaN
Math.abs({}); // -> NaN
Math.abs('string'); // -> NaN
Math.abs(); // -> NaN
Math.round
- 인수로 전달된 숫자의 소수점 이하를 반올림한 정수를 반환한다.Math.round(1.4); // -> 1
Math.round(1.6); // -> 2
Math.round(-1.4); // -> -1
Math.round(-1.6); // -> -2
Math.round(); // -> NaN
Math.ceil
- 인수로 전달된 숫자의 소수점 이하를 올림한 정수를 반환한다.Math.ceil(1.4); // -> 2
Math.ceil(1.6); // -> 2
Math.ceil(-1.4); // -> 1
Math.ceil(-1.4); // -> -1
Math.ceil(); // -> NaN
Math.floor
- 인수로 전달된 숫자의 소수점 이하를 내림(버림)한 정수를 반환한다.Math.floor(1.9); // -> 1
Math.floor(9.1); // -> 9
Math.floor(-1.9); // -> -2
Math.floor(-9.1); // -> -10
Math.floor(1); // -> 1
Math.floor(); // -> NaN
Math.sqrt
- 인수로 전달된 숫자의 제곱근을 반환한다.Math.sqrt(9); // -> 3
Math.sqrt(-9); // -> NaN
Math.sqrt(2); // -> 1.414213562373095
Math.sqrt(1); // -> 1
Math.sqrt(0); // -> 0
Math.sqrt(); // -> NaN
Math.random
- 임의의 난수(랜덤 숫자)를 반환한다. 0에서 1미만의 실수를 반환한다. 즉, 0은 포함되지만 1은 포함되지 않는다.// 0에서 99숫자를 얻기 위한 코드
console.log(Math.floor(Math.random() * 100));
// 1에서 100숫자를 얻기 위한 코드
console.log(Math.floor(Math.random() * 100) + 1);
Math.pow
- 첫 번째 인수를 밑으로, 두 번째 인수를 지수로 거듭제곱한 결과를 반환한다.Math.pow(2, 8); // 256
Math.pow(2, 2); // 4
Math.pow(); // NaN
2 ** 2; // 4
Math.max
- Math.max 메서드는 전달받은 인수 중에서 가장 큰 수를 반환한다. 인수가 전달되지 않으면 -Infinity를 반환한다.Math.max(1); // -> 1
Math.max(1, 2); // -> 2
Math.max(1, 2, 3); // -> 3
Math.max(); // -> -Infinity
const arr = [1, 2, 3];
Math.max(...arr); // -> 3
Math.min
- Math.min 메서드는 전달받은 인수 중에서 가장 작은 수를 반환한다. 인수가 전달되지 않으면 Infinity를 반환한다.Math.min(1); // -> 1
Math.min(1, 2); // -> 1
Math.min(1, 2, 3); // -> 1
Math.min(); // -> Infinity
const arr = [1, 2, 3];
Math.min(...arr); // -> 1