티스토리 뷰

Javascript/메소드

[Javascript] Math 메소드

서스포PAR 2022. 3. 29. 15:51

 


 

💖 자바스크립트 Math 메소드 종류

Math 메소드는 수학에서 자주 사용하는 상수와 함수들의 미리구현해 놓은 메소드 입니다.

 

더보기
메소드 설명
Math.min(x, y, ...) 인수로 전달받은 값 중에서 가장 작은 수를 반환함.
Math.max(x, y, ...) 인수로 전달받은 값 중에서 가장 큰 수를 반환함.
Math.random() 0보다 크거나 같고 1보다 작은 랜덤 숫자(random number)를 반환함.
Math.round(x) x를 소수점 첫 번째 자리에서 반올림하여 그 결과를 반환함.
Math.floor(x) x와 같거나 작은 수 중에서 가장 큰 정수를 반환함.
Math.ceil(x) x와 같거나 큰 수 중에서 가장 작은 정수를 반환함.
Math.abs(x) x의 절댓값을 반환함.
Math.cbrt(x) x의 세제곱근을 반환함.
Math.sqrt(x) x의 제곱근을 반환함.
Math.clz32(x) x을 32비트 이진수로 변환한 후, 0이 아닌 비트의 개수를 반환함.
Math.exp(x) ex 의 값을 반환함. (e : 오일러의 수)
Math.expm1(x) 1 - ex 의 값을 반환함.
Math.fround(x) x와 가장 근접한 32비트 부동 소수점 수(single precision float)를 반환함.
Math.hypot(x, y, ...) 인수로 전달받은 값들을 각각 제곱한 후 더한 총합의 제곱근을 반환함.
Math.imul(x, y) 인수로 전달받은 두 값의 32비트 곱셈의 결과를 반환함.
Math.log(x) x의 자연로그 값을 반환함. (ln x)
Math.log1p(x) ln(1 + x)의 값을 반환함.
Math.log10(x) x의 10을 밑으로 가지는 로그 값을 반환함.
Math.log2(x) x의 2를 밑으로 가지는 로그 값을 반환함.
Math.pow(x, y) x의 y승을 반환함.
Math.sign(x) x의 부호 값을 반환함.
Math.trunc(x) x의 모든 소수 부분을 삭제하고 정수 부분만을 반환함.
Math.sin(x)
Math.cos(x)
Math.tan(x)
Math.asin(x)
Math.acos(x)
Math.atan(x)
Math.asinh(x)
Math.acosh(x)
Math.atanh(x)
Math.atan2(x)
x의 해당 삼각 함숫값을 반환함.

 

 

 

💖 자바스크립트 Math 프로퍼티 종류

자바스크립트는 수학에서 사용하는 다양한 상수들을 Math 프로퍼티를 이용해 제공하고 있습니다.

 

더보기
프로퍼티 설명 대략값
Math.E 오일러의 수(Euler's constant)라고 불리며, 자연로그(natural logarithms)의 밑(base) 값 2.718
Math.LN2 2의 자연로그 값 0.693
Math.LN10 10의 자연로그 값 2.303
Math.LOG2E 오일러 수(e)의 밑 값이 2인 로그 값 1.443
Math.LOG10E
오일러 수(e)의 밑 값이 10인 로그 값 0.434
Math.PI 원의 원주를 지름으로 나눈 비율(원주율) 값 3.14159
Math.SQRT1_2 2의 제곱근의 역수 값 0.707
Math.SQRT2 2의 제곱근 값 1.414

 

 

 

 

 


 

Math 메소드

자바스크립트는 웹 페이지에서 수학적 작업을 손쉽게 할 수 있도록 다양한 Math 메소드를 제공하고 있습니다. 

가장 많이 사용되는 대표적인 Math 메소드는 다음과 같습니다.

 

1. Math.abs()

2. Math.min()

3. Math.max()

4. Math.random()

5. Math.round()

6. Math.floor()

7. Math.ceil()

8. Math.sqrt()

9. Math.pow()

10. Math.sin()

 

대부분의 Math 메소드는 웹 브라우저마다 다른 결괏값을 얻을 가능성이 높습니다.
심지어 같은 자바스크립트 인터프리터라도 운영체제가 다르면 다른 결괏값을 반환할 수 있습니다.
따라서 아주 정확한 결괏값이 필요한 작업에는 Math 메소드는 사용하지 않는 것이 좋습니다.

 

 

 

 

 


 

🔊 Math.abs()

Math.abs(number);

 

인수의 절댓값 반환한다.

 

 

[파라미터]

- number : 절대값으로 변경하려는 값

 

 

[리턴값]

인자에 대한 절대값

 

Math.abs(-1); // 1
Math.abs('-1'); // 1
Math.abs(''); // 0
Math.abs([]); // 0
Math.abs(null); // 0
Math.abs(undefined);// NaN

 

 

 

 


🔊 Math.min()

Math.min(x,y,z,....,n)

 

인수 중에서 가장 작은 수를 반환한다.

 

 

[파라미터]

- x,x,x,...,n : 비교 대상인 수

 

 

[리턴값]

인자로 전달한 수 중에 가장 작은 수를 리턴함

number, 인자가 없으면 Infinity를 리턴

 

const arr = [1, 2, 3];

Math.min(1, 2, 3); // 1
// 배열 요소 중에서 최소값 취득
const min = Math.min.apply(null, arr); // 1

// ES6 문법
Math.min(...arr); // 1

 

 

 

🔊 Math.max()

Math.max(x,y,z,....,n)

 

인수 중에서 가장 큰 수를 반환한다.

 

 

[파라미터]

- x,x,x,...,n : 비교 대상인 수

 

 

[리턴값]

인자로 전달한 수 중에 가장 큰 수를 리턴함

number, 인자가 없으면 -Infinity를 리턴

 

const arr = [1, 2, 3];
Math.max(1, 2, 3); // 3

// 배열 요소 중에서 최대값 취득
// max() 인수로 배열을 받을 수 없으니, 배열을 인수로 받는 apply를 사용
const max = Math.max.apply(null, arr); // 3

// ES6 문법
Math.max(...arr); // 3

[...rest] = [1,2,4]; // rest = [1,2,4]
Math.max(...rest); //4

 

 

 

 


🔊 Math.random()

Math.random()

 

임의의 부동 소수점을 반환한다.

반환된 부동 소수점은 0부터 1 미만이다. 즉, 0은 포함되지만 1은 포함되지 않는다.

 

 

Math.random(); // 0 ~ 1 미만의 부동 소수점 (0.8208720231391746)

/*
1 ~ 10의 랜덤 정수 취득
1) Math.random로 0 ~ 1 미만의 부동 소수점을 구한 다음, 10을 곱해 0 ~ 10 미만의 부동 소수점을 구한다.
2) 0 ~ 10 미만의 부동 소수점에 1을 더해 1 ~ 10까지의 부동 소수점을 구한다.
3) Math.floor으로 1 ~ 10까지의 부동 소수점의 소수점 이하를 떼어 버린 다음 정수를 반환한다.
*/
const random = Math.floor((Math.random() * 10) + 1);
console.log(random); // 1 ~ 10까지의 정수



 

 


🔊 Math.floor()

Math.floor(number)

 

인수의 소수점 이하를 내림한 정수를 반환한다. Math.ceil의 반대 개념이다.

 

양수인 경우, 소수점 이하를 떼어 버린 다음 정수를 반환한다.

음수인 경우, 소수점 이하를 떼어 버린 다음 -1을 한 정수를 반환한다.

 

 

[파라미터]

number : 내림할 수

 

 

[리턴값]

내림한 값

 

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.round()

Math.round(number)

 

인수의 소수점 이하를 반올림한 정수를 반환한다.

 

 

[파라미터]

- number : 반올림할 수

 

 

[리턴값]

반올림 한 값.

 

Math.round(1.4); // 1
Math.round(1.6); // 2
Math.round(-1.4); // -1
Math.round(-1.6); // -2
Math.round(1); // 1
Math.round(); // NaN

 

 

 

🔊 Math.ceil()

Math.ceil(number)

 

인수의 소수점 이하를 올림한 정수를 반환한다.

 

 

[파라미터]

- number : 올림할 수

 

 

[리턴값]

올림 한 값.

 

Math.ceil(1.4); // 2
Math.ceil(1.6); // 2
Math.ceil(-1.4); // -1
Math.ceil(-1.6); // -1
Math.ceil(1); // 1
Math.ceil(); // NaN

 

 

 


🔊 Math.sqrt()

Math.sqrt(number)

 

인수의 제곱근을 반환한다.

 

 

[리턴값]

number, x에 대한 제곱근

 

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.pow()

Math.pow(x(필수), y(필수))

 

첫번째 인수를 밑(base), 두번째 인수를 지수(exponent)로하여 거듭제곱을 반환한다.

 

[파라미터]

x : 밑

y : 지수

 

[리턴값]

number, 밑 a를 지수인 n만큼 곱한 값

 

Math.pow(2, 8); // 256
Math.pow(2, -1); // 0.5
// ES7(ECMAScript 2016) Exponentiation operator(거듭 제곱 연산자)
2 ** 8; // 256

 

 

 


🔊 Math.sin()

Math.sin(number)

 

Math.sin() 메소드는 인수로 전달받은 값의 사인(sine) 함숫값을 반환합니다.

 

 

[리턴값]

number, 각의 코사인 값을 나타내는 -1부터 1사이의 수

 

Math.sin(10);  // number, -0.5440211108893698
Math.sin(-10); // number, 0.5440211108893698
Math.sin(0);   // number, 0
Math.sin(Math.PI); // number, 1.2246467991473532e-16
Math.sin(Math.PI/2); // number, 1

 

 

 

 

'Javascript > 메소드' 카테고리의 다른 글

[Javascript] 원본 배열을 변경하는 Array 메소드  (0) 2022.04.22
[Javascript] Number 메소드  (0) 2022.04.19
[Javascript] Date 메소드  (0) 2022.04.11
[Javascript] Date Constructor  (0) 2022.04.01
[Javascript] string 메소드  (0) 2022.03.21
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함