꾸준한 개발일기

Javascript:: Math란? 본문

JS/JavaScript

Javascript:: Math란?

꾸개일 2022. 11. 7. 23:07
반응형

1. Math 프로퍼티

1.1 Math.PI

예제 01) 원주율 PI 반환

Math.PI; // 3.141592653589793

 

2. Math 메서드

2.1 Math.abs

예제 02) 절대값 반환

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

 

2.2 Math.round

예제 03) 소수점 이하를 반올림한 정수 반환

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

 

2.3 Math.ceil

예제 04) 소수점 이하를 올림한 정수 반환

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

 

2.4 Math.floor

예제 05) 소수점 이하를 내림한 정수 반환

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

 

2.5 Math.sqrt

예제 06) 제곱근 반환

Math.sqrt(9); // 3
Math.sqrt(-9); // NaN
Math.sqrt(2); // 1.4142135623730951
Math.sqrt(1); // 1
Math.sqrt(0); // 0
Math.sqrt(); // NaN

 

2.6 Math.random

예제 07) 임의의 난수(랜덤 숫자) 반환

Math.random(); // 0에서 1 미만의 랜덤 실수(0.17562431468582518)
  • 0은 포함되지만 1은 포함되지 않음

 

2.7 Math.pow

예제 08) 첫 번째 인수를 밑으로, 두번재 인수를 지수로 거듭제곱한 결과 반환

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

 

예제 09) ES7 지수 연산자

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

 

2.8 Math.max

예제 10) 가장 큰 수 반환

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

 

예제 11) 배열의 요소 중 최대값 구하기

// 배열 요소 중에서 최대값 획득
Math.max.apply(null, [1, 2, 3]); // 3

// ES6 스프레드 문법
Math.max(...[1, 2, 3]); // 3

 

2.9 Math.min

예제 12) 가장 작은 수 반환

Math.min(1); // 1
Math.min(1, 2); // 1
Math.min(1, 2, 3); // 1
Math.min(); // Infinity

 

예제 13) 배열 요소 중 최소값 구하기

// 배열 요수 중에서 최소값 획득
Math.min.apply(null, [1, 2, 3]); // 1

// ES6 스프레드 문법
Math.min(... [1, 2, 3]); // 1

 

 

 

 

 

참고문서

  • 모던 자바스크립트 Deep Dive:  자바스크립트의 기본 개념과 동작 원리

 

 

 

 

 

반응형
Comments