🗣️ 자바스크립트에선 new Date()를 사용하면 현재 시간을 알 수 있고, 시간을 조절할 수 도 있다. 이것에 대해 알아보자!



📌 Date 객체 생성

Date 객체를 생성하는 방법은 new 연산자를 사용하는 것입니다.

// 현재 시간 알아내기
var date1 = new Date()

// 시간 설정하기
var date2 = new Date(year, monthIndex, day, hours, minutes, seconds, milliseconds)

// 2023 4월 15일 2:31:00 
// month는 0부터 시작
var date3 = new Date(2023, 3, 15, 2, 31)

📌 생성한 객체로 시간 다루기

// 년도 얻기
const year = date1.getFullYear()
// 현재시간을 2011으로 지정
const newyear = date1.setFullYear(2011)

// 월 얻기(0~11) 1월~12월 즉, 0은 1월
const month = date1.getMonth()
// 현재시간을 3월로 지정
const newmonth = date1.setMonth(2)

// 일 얻기
const date = date1.getDate()
// 현재시간 21일로 지정
const newdate = date1.setDate(21)

// 요일 얻기(0~6), 0 = 일요일
const day = date1.getDay()
// 현재시간은 2월
const newday = date1.setDay(1)

// 시간 얻기
const hours = date1.getHours()
// 현재 16시로 지정
const newhours = date1.setHours(16)

// 분 얻기
const min = date1.getMinutes()
// 현재 44분 지정
const newmin = date1.setMinutes(44)

// 초 얻기
const sec = date1.getSeconds()
// 현재 시간 37초로 지정
const newsec = date1.setSeconds(37)

📌 특정 시간을 계산 하는 법

new 연산자로 현재시간을 얻어 내가 원하는 특정 시간을 알아낼 수 있습니다

// 현재 시간
const date = new Date()
// 한달 전, 현재 월을 구하고 -1를 해주고 setMonth로 설정
const oneMonthAgo = new Date(date.setMonth(date.getMonth() - 1))
// 한달 후
const oneMonthLater = new Date(date.setMonth(date.getMonth() + 1))
// 1년 전
const oneYearAgo = new Date(date.setFullYear(date.getFullYear() - 1))

📌 0부터 시작하는 month, day 문자로 출력하기

✅ 0부터 출력되는 month와 day를 잘 생각해서 사용하는 걸 잊지 않아야 합니다

0 = 1월
1 = 2월
2 = 3월 ...

const Months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]

const month = date1.getMonth() // 현재 month = 3
console.log(Months[month])    // output : April

요일은 캘린더를 생각해서 첫번째가 일요일이라는 걸 알아야 합니다
0 = 일요일
1 = 월요일
2 = 화요일 ...

const weeks = ["SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"]

const day = date1.getDay() // 현재 요일 = 5
console.log(weeks[day])   // output : FRI


참고사이트
⛓️ mdn

profile
효율을 생각하는 프론트엔드 개발자

0개의 댓글