[ 모던 자바스크립트 ] 29. Math

2024. 4. 11. 09:07· Javascript/모던 자바스크립트
목차
  1. 1) Math 프로퍼티
  2. 2) Math 메서드
728x90

표준 빌트인 객체인 Math는 수학적인 상수와 함수를 위한 프로퍼티와 메서드를 제공한다.

Math는 생성자 함수가 아니다. 따라서 Math는 정적 프로퍼티와 정적 메서드만 제공한다.

 


1) Math 프로퍼티

Math.PI

원주율 PI 값을 반환한다.

Math.PI;   // -> 3.141592653589793

 


 

2) Math 메서드

Math.abs

인수로 전달된 숫자의 절대값을 반환한다.

절대값은 반드시 0 또는 양수이어야 한다.

Math.abs(-1);   // -> 1
Math.abs('');   // -> 0
Math.abs(undefined);   // -> NaN

 

 

Math.round

인수로 전달된 숫자의 소수점 이하를 반올림한 정수를 반환한다.

 

 

Math.ceil

인수로 전달된 숫자의 소수점 이하를 올림한 정수를 반환한다.

소수점 이하를 올림하면 더 큰 정수가 된다.

 

 

Math.floor

인수로 전달된 숫자의 소수점 이하를 내림한 정수를 반환한다.

소수점 이하를 내림하면 더 작은 정수가 된다.

 

 

Math.sqrt

인수로 전달된 숫자의 제곱근을 반환한다.

Math.sqrt(9);    // -> 3
Math.sqrt(-9);   // -> NaN

 

 

Math.random

임의의 난수(랜덤 숫자)를 반환한다.

Math.random 메서드가 반환한 난수는 0에서 1 미만의 실수다. 즉, 0은 포함되지만 1은 포함되지 않는다.

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.pow 메서드 대신 ES7에서 도입된 지수 연산자를 사용하면 가독성이 더 좋다.

2 ** 2 ** 2;   // -> 16

 

 

Math.max

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

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

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

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

 

 

Math.min

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

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

 

 

 


출처: 이웅모, 『모던 자바스크립트 Deep Dive』 - 위키북스

728x90

'Javascript > 모던 자바스크립트' 카테고리의 다른 글

[ 모던 자바스크립트 ] 31. RegExp (정규표현식)  (1) 2024.04.12
[ 모던 자바스크립트 ] 30. Date  (0) 2024.04.11
[ 모던 자바스크립트 ] 28. Number  (0) 2024.04.09
[ 모던 자바스크립트 ] 27. 배열  (0) 2024.04.08
[ 모던 자바스크립트 ] 26. ES6 함수의 추가 기능 (메서드 | 화살표 함수 | Rest 파라미터)  (0) 2024.04.05
  1. 1) Math 프로퍼티
  2. 2) Math 메서드
'Javascript/모던 자바스크립트' 카테고리의 다른 글
  • [ 모던 자바스크립트 ] 31. RegExp (정규표현식)
  • [ 모던 자바스크립트 ] 30. Date
  • [ 모던 자바스크립트 ] 28. Number
  • [ 모던 자바스크립트 ] 27. 배열
ZoD
ZoD
바쁘게 굴러가는 ZoD의 하루~
ZoD
como siempre
ZoD
  • 분류 전체보기 (173)
    • Daily (0)
    • Javascript (16)
      • 모던 자바스크립트 (46)
    • Typescript (8)
    • FrontEnd (7)
    • React (21)
      • tanstack query (1)
      • 라이브러리 (3)
    • Vue (33)
      • Nuxt (11)
      • Quasar (6)
    • CSS (12)
    • Storybook (8)
    • Figma (3)
    • CS 지식 (5)
    • Network (5)
    • 알고리즘 (2)
    • 사이드 프로젝트 (4)
      • ddangkong (4)
      • boncierge (0)
    • 개발, 근데 이제 헛소리를 곁들인 (1)
    • ETC (2)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

인기 글

최근 글

hELLO · Designed By 정상우.v4.2.2
ZoD
[ 모던 자바스크립트 ] 29. Math
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.