Math 메소드는 수학계산용 메소드, 수학적인 상수와 함수를 위한 속성과 메소드를 가진 내장 객체입니다. 함수 객체가 아닙니다.
Math 메소드는 정적인 프로퍼티와 메소드 만 제공한다.
Math.abs()메서드는 주어진 숫자의 절대값을 반환한다. 음수를 양수로 반환한 절대값을 반환한다. 즉 절댓값은 반드시 0 또는 양수이어야 한다.
Math.abs(3); // 3 / (양수)
Math.abs(-3); // 1 / (음수)
Math.abs('-1'); // 1 / (숫자 문자열)
Math.abs([2]); // 2 / (하나의 숫자요소를 가진 배열)
Math.abs(null); // 0 / (null)
Math.abs(''); // 0 / ('' 빈 문자열, 공백)
Math.abs([]); // 0 / ([] 빈 배열)
Math.abs([1,2]); // NaN / (하나 이상의 요소를 가진 배열)
Math.abs({}); // NaN / ()
Math.abs('문자'); // NaN / (문자가 들어간 문자열)
Math.abs(); // NaN / ()
Math.max() 메소드는 인수에서 제일 큰 수를 반환합니다.
Math.max(값1, 값2, ... )
Math.max(40, 20, 30); // 40
Math.max(-40, -75, -0); // - 0
Math.max(20, -40, 10); // 20
Math.max(20, -40, 10, 'a'); // NaN
Math.max(20, -40, 10, '200'); // 200
Math.min()함수는 인수에서 제일 작은 수를 반환합니다.
Math.min(값 1, 값2, ...)
- 파라미터 인자를 전부 숫자로 변환하여 비교한다.
- NaN이 한개라도 있으면 NaN을 반환한다.
Math.nin(40, 20, 30); // 20
Math.nin(-40, -75, -0); // -75
Math.nin(20, -40, 10); // 10
// 활용 : 문자 3개 중 가장 짧은 문자를 구한다면?
function ShortWords(word1, word2, word3) {
let shortNum = Math.min(word1.length, word2.length, word3.length);
if (shortNum === word1.length) {
return word1;
} else if (shortNum === word2.length){
return word2;
} else if (shortNum === word3.length){
return word3;
}
}
Math.round() 함수는 인수의 소수점 이하를 반올림한 정수를 반환한다.
Math.round( 10.03); // 10
Math.round( 10.5 ); // 11
Math.round( 10 ); // 10
Math.round(-10.5 ); // -10
Math.round(-10.6 ); // -11
Math.round(-10.2); // - 10
Math.ceil() 함수는 인수의 소수점 이하를 올림한 정수를 반환한다.
Math.ceil(1.1); // 2
Math.ceil(1.5); // 5
Math.ceil(1.0); // 1
Math.ceil(-0.08); // -0
Math.ceil(-0.8); // -0
Math.ceil(0); // 0
Math.ceil(-7); // -7
Math.ceil(-7.29); // -7
Math.floor() 함수는 인수의 소수점 이하를 내림한(버림) 정수를 반환한다.
Math.floor(1.99); // 1
Math.floor(1.05); // 1
Math.floor(1); // 1
// 소숫점 값이있고, 음수인경우 내림 후 -1을 더한다.
Math.floor(-1.7); // - 2
Math.floor(-1.0); // -1
Math.pow() 함수는 x 의 y 승을 반환합니다.
Math.pow(base, exponent)
Math.pow(base, exponent)
Math.pow(10, 2) // 100
Math.pow(10, 0) // 1
// y가 0일때 x가 NaN이면 → 정수 1 을 반환
Math.pow("A", 0) // 1
// y가 NaN이면 → NaN를 반환한다.
Math.pow(0, "A") // NaN
Math.pow(100, "A") // NaN
제곱근을 구하는 방법은 for문, ** 연산자를 사용한 방법도 있다. → 제곱하는 방법
Math.random() 메소드를 실행할 떄마다 0에서 1미만의 난수(랜덤값)를 반환한다.
Math.random() // 0.2193631590805949
Math.random() // 0.19524849437903447
인수의 제곱근을 반환한다.만약 x 가 음수라면 Math.sqrt() 함수는 NaN를 반환합니다.
Math.sqrt(9); // 3
Math.sqrt(2); // 1.414213562373095
Math.sqrt(1); // 1
Math.sqrt(0); // 0
Math.sqrt(-1); // NaN
출처MDN