문 열 때 꼭 읽어야 할 글
Math는 다른 객체와 다릅니다. Math 객체는 생성자가 아닌 정적 객체입니다. 사실 Math는 수학 함수를 저장하기 위해 Javascript에서 설정한 객체 네임스페이스일 뿐입니다
속성
Math.E는 상수 e(대략 2.718과 동일)의 값인 자연 로그의 밑입니다
Math.PI 파이 값(대략 3.14159와 동일)
console.log(Math.E);//2.718281828459045
console.log(Math.PI);//3.141592653589793
Math.LN2 2의 자연 로그(대략 0.693과 동일)
Math.LN10 10의 자연 로그(대략 2.302와 동일)
Math.LOG2E 밑이 2인 e의 로그(대략 1.414와 동일)
Math.LOG10E 밑이 10인 e의 로그(대략 0.434와 동일)
console.log(Math.LN2);//0.6931471805599453
console.log(Math.LN10);//2.302585092994046
console.log(Math.LOG2E);//1.4426950408889634
console.log(Math.LOG10E);//0.4342944819032518
Math.SQRT2 2의 제곱근(대략 1.414와 동일)
Math.SQRT1_2 2의 제곱근의 역수인 1/2의 제곱근(대략 0.707과 동일)
console.log(Math.SQRT2);//1.4142135623730951
console.log(Math.SQRT1_2);//0.7071067811865476
방법
이러한 메소드는 모두 Number() 암시적 유형 변환을 포함합니다. 메소드의 범위를 초과하는 경우 NaN이 반환됩니다.
Math.min()은 숫자 집합의 최소값을 반환합니다
Math.max()는 숫자 집합의 최대값을 반환합니다.
console.log(Math.min(1,2,3));//1
console.log(Math.max(1,2,3));//3
Math.ceil(num)은 정수로 반올림됩니다
Math.floor(num)은 정수로 내림됩니다
Math.round(num)은 정수로 반올림됩니다
console.log(Math.ceil(12.6));//13
console.log(Math.floor(12.6));//12
console.log(Math.round(12.6));//13
Math.abs(num)은 num
의 절대값을 반환합니다.
Math.random()은 0보다 크거나 같고 1보다 작은 난수를 반환합니다.
console.log(Math.abs(-10));//10
console.log(Math.random());//0.741887615993619
Math.exp(num)는 Math.E의 num 거듭제곱을 반환합니다
Math.log(num)은 num
의 자연 로그를 반환합니다.
Math.sqrt(num)은 num의 제곱근을 반환합니다(x는 0보다 크거나 같은 숫자여야 합니다)
Math.pow(num,power)는 num의 거듭제곱을 반환합니다.
console.log(Math.exp(0));//1
console.log(Math.log(10));//2.302585092994046
console.log(Math.sqrt(100));//10
console.log(Math.pow(10,2));//100
Math.sin(x)는 x
의 사인 값을 반환합니다.
Math.cos(x)는 x의 코사인을 반환합니다
Math.tan(x)는 x의 탄젠트를 반환합니다
Math.asin(x)는 x의 아크사인 값을 반환합니다(x는 -1과 1 사이의 숫자여야 합니다)
Math.acos(x)는 x의 역코사인을 반환합니다(x는 -1과 1 사이의 숫자여야 합니다)
Math.atan(x)는 x의 아크탄젠트를 반환합니다
Math.atan2(y,x)는 y/x의 아크탄젠트를 반환합니다.
console.log(Math.sin(30*Math.PI/180));//0.49999999999999994
console.log(Math.cos(60*Math.PI/180));//0.5000000000000001
console.log(Math.tan(45*Math.PI/180));//0.9999999999999999
console.log(Math.asin(1)*180/Math.PI);//90
console.log(Math.acos(1)*180/Math.PI);//0
console.log(Math.atan(1)*180/Math.PI);//45
console.log(Math.atan2(1,1)*180/Math.PI);//45
팁
[tips1] 배열에서 최대값 또는 최소값 찾기
var values = [1,2,3,4,5,6,7,8]; var max = Math.max.apply(Math,values);//8
[tips2] 특정 정수 범위에서 값을 무작위로 선택하세요
value = Math.floor(Math.random()*可能值的总数 + 第一个可能的值)
[tips3] 최소값과 최대값 중 무작위로 선택하세요
function selectFrom(lowerValue,upperValue){ var choices = upperValue - lowerValue + 1; return Math.floor(Math.random()*choices + lowerValue); } var num = selectFrom(2,10); console.log(num);
방법 | 설명 |
---|---|
abs(x) | 숫자의 절대값을 반환합니다. |
아코스(x) | 숫자의 아크코사인을 반환합니다. |
아신(x) | 숫자의 아크사인을 반환합니다. |
아탄(x) | x의 아크탄젠트를 -PI/2와 PI/2 라디안 사이의 숫자로 반환합니다. |
atan2(y,x) | x축에서 점(x,y)까지의 각도를 반환합니다(-PI/2와 PI/2 라디안 사이). |
셀(x) | 로그를 반올림하세요. |
코스(엑스) | 숫자의 코사인을 반환합니다. |
exp(x) | e의 지수를 반환합니다. |
플로어(x) | 로그를 반올림하세요. |
로그(x) | 숫자(밑 e)의 자연 로그를 반환합니다. |
최대(x,y) | x와 y 중 가장 높은 값을 반환합니다. |
분(x,y) | x와 y 사이에서 가장 낮은 값을 반환합니다. |
파우(x,y) | x의 y제곱을 반환합니다. |
무작위() | 0~1 사이의 임의의 숫자를 반환합니다. |
라운드(x) | 숫자를 가장 가까운 정수로 반올림하세요. |
신(x) | 숫자의 사인을 반환합니다. |
sqrt(x) | 숫자의 제곱근을 반환합니다. |
탄(x) | 각도의 탄젠트를 반환합니다. |
toSource() | 이 개체의 소스 코드를 반환합니다. |
valueOf() | Math 객체의 원래 값을 반환합니다. |