Math는 생성자 함수가 아니기 때문에 정적 프로퍼티와 정적 메서드만 제공한다.
Math 메서드
Math.random
임의의 난수를 반환한다. 0은 포함되지만 1은 포함되지 않는다.
/*
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
ES7에서 도입된 지수 연산자를 사용하면 가독성이 좋다.
// ES7 지수 연산자
2 ** 2 ** 2; // -> 16
Math.pow(Math.pow(2, 2), 2); // -> 16
'Today I Learned' 카테고리의 다른 글
모던 자바스크립트 Deep Dive 31장 RegExp (0) | 2022.04.19 |
---|---|
모던 자바스크립트 Deep Dive 30장 Date (0) | 2022.04.19 |
모던 자바스크립트 Deep Dive 28장 Number (0) | 2022.04.16 |
모던 자바스크립트 Deep Dive 27장 배열 (0) | 2022.04.14 |
모던 자바스크립트 Deep Dive 26장 ES6 함수의 추가 기능 (0) | 2022.04.13 |