seunghyun Note

29장(Math) 본문

스터디/모던자바스크립트 deep dive

29장(Math)

승숭슝현 2024. 1. 8. 10:37

Math 많이 사용한다. 앞으로도 많이 써보자구!

1. Math 프로퍼티

Math.PI

말해뭐해

Math.PI;  // -> 3.141592653589793

2. Math Method

Math.abs

절대 절대값

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(1);    // -> 1
Math.round();     // -> NaN

Math.ceil

올려! 올림

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.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 미만의 실수 난수 만들어서 반환

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

첫 번째 인수를 밑으로, 두 번째 인수를 지수로 거듭제곱하여 반환.

Math.pow(2, 8);  // -> 256
Math.pow(2, -1); // -> 0.5
Math.pow(2);     // -> NaN

Math.max , min

가장 큰 수를 반환 , 가장 작은 수를 반환
없으면 -infinity , infinity

Math.max(1); // -> 1
Math.max(1, 2); // -> 2
Math.max(1, 2, 3); // -> 3
Math.max(); // -> -Infinity

Math.min(1); // -> 1
Math.min(1, 2); // -> 1
Math.min(1, 2, 3); // -> 1
Math.min(); // -> Infinity
728x90

'스터디 > 모던자바스크립트 deep dive' 카테고리의 다른 글

31장 (RegExp)  (1) 2024.01.09
30장 (Date)  (0) 2024.01.09
28장(Number)  (1) 2024.01.08
27장(배열)  (1) 2024.01.08
26장 (ES6 함수의 추가 기능)  (1) 2024.01.08