[JS] Date, Math / TIL # 24
JS의 날짜 객체인 Date와 수학적 기능을 제공하는 객체인 Math를 알아보자
Date
new Date()
를 통해 생성하며 날짜와 시간과 관련된 다양한 메서드가 존재한다
const date = new Date();
date.getFullYear(); // 년
date.getMonth()+1; // 월 ❗️ 현재 -1의 값이 나옴
date.getDate(); // 날짜
date.getDay(); // 요일 ❗️ 숫자로 나옴!
date.getHours(); // 시
date.getMinutes(); // 분
date.getSeconds(); // 초
date.getTime(); // ❗️ 1970년 1월 1일을 기준으로 얼만큼의 밀리초가 지났는지를 반환함 (비교 연산을 통해 어떤게 더 과거의 일인지 알 수 있음
또한 매개변수를 통해 해당 날짜의 Date를 구할 수도 있다
const date1 = new Date('December 17, 2019 03:24:00');
// 2019-12-17T03:24:00.000Z
const date2 = new Date('2019-12-17T03:24:00');
// 2019-12-17T03:24:00.000Z
const date3 = new Date(2019, 5, 1);
// 2019-06-01T00:00:00.000Z
Math
수학 계산을 위한 객체로 유용한 메서드들을 제공한다
round, ceil, floor
- round : 반올림
- ceil : 올림
- floor : 내림
Math.round(2.1); // 2
Math.round(2.8); // 3
Math.ceil(2.1); // 3
Math.ceil(2.8); // 3
Math.floor(2.1); // 2
Math.floor(2.8); // 2
Random
0.0000000000000000에서 0.9999999999999999 사이의 값에서 랜덤수를 제공
하지만 이런 랜덤 값은 유용하게 사용할 수가 없다. 때문에 위에서 나온 ceil, floor등을 이용해서 정수로 변환 후 사용한다
Math.random(); // 0.26653614620646193
Math.floor(Math.random() * 10); // 2
설명 🚀
10을 곱함으로서 0.2665...을 2.6653....으로 변환시킨후Math.floor
를 통해 내림하여 2라는 랜덤 정수 값을 만드는 것이다
특정값 사이의 랜덤 값 구하기
예를 들어 max, min 값이 주어지고 둘 사이의 값을 구하라 했을 때 다음과 같이 구할 수 있다
Math.floor(Math.random() * (max - min + 1) + min)
설명 🚀
랜덤 값에min-max+1
을 통해 랜덤으로 출력될 정수의 수를 구하고+min
을 통해 첫 랜덤 숫자를 정해주는 식이다
`문제를 풀 때 (max - min + 1) 부분이 이해가 안됐는데, 랜덤으로 뽑힐 숫자의 수 라고 생각하니 이해되었다
끝~
Author And Source
이 문제에 관하여([JS] Date, Math / TIL # 24), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@wjdcksdud29/JS-Date-TIL-24저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)