Skip to content

Latest commit

 

History

History
89 lines (55 loc) · 2.59 KB

29_Math.md

File metadata and controls

89 lines (55 loc) · 2.59 KB

29장. Math

표준 빌트인 객체인 Math는 수학적인 상수와 함수를 위한 프로퍼티와 메서드를 제공한다. Math는 생성자 함수가 아니기 때문에 정적 프로퍼티와 정적 메서드만 제공한다.

29.1 Math 프로퍼티

29.1.1 Math.PI

원주율 PI 값을 반환한다.

Math.PI; // 3.141592653589793

29.2 Math 메서드

29.2.1 Math.abs

Math.abs 메서드는 인수로 전달된 숫자의 절대값을 반환한다. 절대값은 반드시 0 또는 양수이어야 한다.

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

29.2.2 Math.round

Math.round 메서드는 인수로 전달된 숫자의 소수점 이하를 반올림한 정수를 반환하다.

29.2.3 Math.ceil

Math.ceil 메서드는 인수로 전달된 숫자의 소수점 이하를 올림한 정수로 반환한다. 소수점 이하를 올림하면 더 큰 정수가 된다.

Math.ceil(-1.4);  // -1

29.2.4 Math.floor

Math.floor 메서드는 인수로 전달된 숫자의 소수점 이하를 내림한 정수로 반환한다.

29.2.5 Math.sqrt

Math.sqrt 메서드는 인수로 전달된 숫자의 제곱근을 반환한다.

Math.sqrt(-9);  // NaN
Math.sqrt(2);  // 1.4142135

29.2.6 Math.random

Math.random 메서드는 임의의 난수(랜덤 숫자)를 반환한다. Math.random 메서드가 반환한 난수는 0에서 1미만의 실수다.

29.2.7 Math.pow

Math.pow 메서드는 첫 인수를 밑으로 두 번째 인수를 지수로 거듭제곱한 결과를 반환한다.

Math.pow(2);  // NaN
MAth.pow(2, -1);  // 0.5

Math.pow 메서드 대신 ES7에서 도입된 지수 연산자를 사용하면 가독성이 더 좋다.

2 ** 2 ** 2;  // 16
Math.pow(Math.pow(2, 2), 2);  // 16

29.2.8 Math.max

Math.max 메서드는 전달받은 인수 중에서 가장 큰 수를 반환한다. 인수가 전달되지 않으면 -Infinity를 반환한다.

배열을 인수로 전달받아 배열의 요소 중에서 최대값을 구하려면 Funcion.prototype.apply 메서드 또는 스프레드 문법을 사용해야 한다.

Math.max.apply(null, [1, 2, 3]);  // 3

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

29.2.9 Math.min

Math.min 메서드는 전달받은 인수 중에서 가장 작은 수를 반환한다. 인수가 전달되지 않으면 Infinity를 반환한다.

배열을 인수로 전달받아 배열의 요소 중에서 최대값을 구하려면 Funcion.prototype.apply 메서드 또는 스프레드 문법을 사용해야 한다.