Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- HTML #CSS
- 잔
- 컴퓨터공학 #c #c언어 #문자열입력
- 컴퓨터공학 #Java #자바 #클래스 #객체 #인스턴스
- 컴퓨터공학 #자료구조 #스택 #c++ #알고리즘 #백준문제풀이
- BOJ #컴퓨터공학 #C++ #알고리즘 #자료구조
Archives
- Today
- Total
영벨롭 개발 일지
[JavaScript]Math 객체 다루기: min, max, random, round, ceil, floor 본문
Programming Language/JavaScript
[JavaScript]Math 객체 다루기: min, max, random, round, ceil, floor
영벨롭 2022. 3. 20. 19:38[ Math 객체 ]
Math 객체는 수학에서 자주 사용하는 상수와 함수들을 미리 구현해놓은 자바스크립트 표준 내장 객체입니다.
Math 객체는 생성자가 따로 존재하지 않아 instance를 따로 생성하지 않고 바로 사용할 수 있습니다.
자주 사용하는 메서드는 다음과 같습니다.
- Math.min()
- Math.max()
- Math.random()
- Math.round()
- Math.ceil()
- Math.floor()
[ 최솟값 & 최댓값 ]
Math.min()과 Math.max() 는 인수로 받은 수 중 가장 작은 값과 가장 큰 값을 반환합니다.
만약 인수가 주어지지 않으면 각각 Infinity, -Infinity를 반환합니다.
또한 만약 인수중에 비교할 수 없는 값이 주어지면 NaN을 반환합니다.
const minN = Math.min(1, 2, 3, 4, 5); //1
const maxN = Math.max(1, 2, 3, 4, 5); //5
[ 난수 생성 ]
Math.random() * number 은 0부터 number 사이의 난수를 반환합니다. 이때 난수는 float 타입입니다.
const num1 = Math.random(); //0~1 사이 난수
const num2 = Math.random() * 10; //0~10 사이 난수
[ float 타입 -> int 타입 변환 ]
float 타입에서 int 타입으로 변환하는 메서드는 세 가지가 있습니다.
(1) Math.round(실수)
Math.round() 메서드는 실수를 반올림/반내림 해줍니다.
const num1 = Math.round(0.1); //0
const num2 = Math.round(0.8); //1
(2) Math.ceil(실수)
Math.ceil() 메서드는 실수를 올림 해줍니다.
const num1 = Math.ceil(1.1); //2
const num2 = Math.ceil(1.8); //2
(3) Math.floor(실수)
Math.floor() 메서드는 실수를 내림 해줍니다.
const num1 = Math.floor(1.1); //1
const num2 = Math.floor(1.8); //1
[ 예제 ]
요일을 나타내는 array 에서 랜덤하게 원소를 뽑는 코드를 작성해봅시다!
const days = [ "mon", "tue", "wed", "thu", "fri", "sat", "sun" ];
//index를 난수로 생성: 0~7 사이 정수 난수
const idx = Math.floor(Math.random() * days.length);
const day = days[idx];
반응형
'Programming Language > JavaScript' 카테고리의 다른 글
[JavaScript]자바스크립트로 input 박스 제어 (0) | 2022.04.19 |
---|---|
[JavaScript]자바스크립트 이벤트 event : 이벤트 리스너, 이벤트 종류, preventDefault (0) | 2022.04.15 |
[JavaScript]Date 객체, setInterval, setTimeout: 시간 나타내기 (0) | 2022.03.20 |
[JavaScript]Form에 이름을 입력 한 뒤, 웹 페이지에 표시하기 (0) | 2022.03.17 |
[JavaScript]실행환경, 개발자 도구, 변수 호이스팅 (0) | 2022.03.17 |