[JavaScript] Math
Math
표준 빌트인 객체인 Math는 수학적인 상수와 함수를 위한 프로퍼티와 메서드를 제공한다.
Math는 생성자 함수가 아니다. 따라서 Math는 정적 프로퍼티와 정적 메서드만 제공한다.
Math 프로퍼티
Math.PI
원주율 PI 값을 반환한다.
Math 메서드
Math.abs
이 메서드는 인수로 전달된 숫자의 절대값을 반환한다. 절대값은 반드시 0 또는 양수이어야 한다.
Math.abs(-1); // 1
Math.abs('-1'); // 1
Math.abs([]); // 0
Math.abs(''); // 0
Math.abs(null); // NaN
Math.abs(undefined); // NaN
Math.abs(); // NaN
Math.abs({}); // NaN
숫자로 타입 변환해서 반환한다. 숫자로 타입 변환을 못 할 시에는 NaN을 반환한다.
Math.round
이 메서드는 인수로 전달된 숫자의 소수점 이하를 반올림한 정수를 반환한다.
Math.ceil
이 메서드는 인수로 전달된 숫자의 소수점 이하를 올림한 정수를 반환한다.
예를 들어 -1.4 일 경우에는 -1이 된다. -1.4 보다 큰 값이 되어야한다.
Math.floor
이 메서드는 인수로 전달된 숫자의 소수점 이하를 내림한 정수를 반환한다.
예를 들어 -1.4 일 경우에는 -2가 된다. -1.4 보다 작은 값이 되어야 한다.
Math.sqrt
이 메서드는 인수로 전달된 숫자의 제곱근을 반환한다. 한마디로 인수에 루트를 씌우는 값이다.
음수나 인수를 생략할 경우 NaN을 반환한다.
Math.random
이 메서드는 임의의 난수(랜덤 숫자)를 반환한다. 반환한 난수는 0에서 1미만의 실수다.
const random = Math.floor((Math.random() * 10) + 1);
console.log(random); // 1에서 10 범위의 정수
Math.pow
이 메서드는 첫 번째 인수를 밑으로 두 번째 인수를 지수로 거듭제곱한 결과를 반환한다.
Math.pow(2, 4); // 16
Math.pow(2, -1); // 0.5
두 번째 인수를 생략하면 NaN을 반환한다. pow 메서드보다 지수 연산자를 사용하는게 가독성이 더 좋다.
Math.max
이 메서드는 전달받은 인수 중에서 가장 큰 수를 반환한다. 인수가 전달되지 않으면 -Infinity를 반환한다.
Math.min
이 메서드는 전달받은 인수 중에서 가장 작은 수를 반환한다. 인수가 전달되지 않으면 Infinity를 반환한다.