표준 내장 객체 내용은 다 외울건 아니고 그냥 이런게 있구나... 나중에 쓸 일 있으면 참고하려고 작성합니다.
새로운 데이터를 반환하는지, 원본 데이터를 수정하는지를 확인하기!
const date = new Date()
console.log(date) //Wed Aug 09 2023 15:13:27 GMT+0900 (한국 표준시)
Wed Aug 09 2023 15:13:27 GMT+0900 (한국 표준시)
const d1 = new Date(2023, 08, 09, 12, 23, 30)
//Expected output
//Aug 09 2023 12:23:30
console.log(d1) //Sat Sep 09 2023 12:23:30 GMT+0900 (한국 표준시)
console.log(d1.getFullYear()) //2023
연도
를 반환하거나 지정set
키워드로 시작하는 메소드를 사용하면 원하는 값으로 지정해서 날짜 데이터를 사용할 수 있다.const date = new Date()
console.log(date.getFullYear()) //2023
date.setFullYear(2024)
console.log(date.getFullYear()) //2024
console.log(date) //Fri Aug 09 2024 15:27:43 GMT+0900 (한국 표준시)
월(月)
를 반환하거나 지정const date = new Date()
console.log(date.getMonth())
//Expected output : 8월
//Real output : 7 (zero-based-numbering)
date.setMonth(0) // 0 = 1월
console.log(date.getMonth()) //0 = 1월
console.log(date) //Mon Jan 09 2023 15:33:02 GMT+0900
일(日)
를 반환하거나 지정시(時)
를 반환하거나 지정const date = new Date()
console.log(date.getHours()) //15 (=오후 3시)
date.setHours(3)
console.log(date.getHours()) //3 (=오전 3시)
console.log(date) //Wed Aug 09 2023 03:38:04 GMT+0900 (한국 표준시)
분(分)
를 반환하거나 지정초(秒)
를 반환하거나 지정값 | 요일 |
---|---|
0 | 일요일 |
1 | 월요일 |
2 | 화요일 |
3 | 수요일 |
4 | 목요일 |
5 | 금요일 |
6 | 토요일 |
const date = new Date()
console.log(date.getTime()) //1691566496498
console.log(date) //Wed Aug 09 2023 16:34:56 GMT+0900 (한국 표준시)
date.setTime(1700000000000)
console.log(date.getTime()) //1700000000000
console.log(date) //Wed Nov 15 2023 07:13:20 GMT+0900 (한국 표준시)
.getTime()
과 다른 점은 getTime()
은 날짜 인스턴스가 생성된 순간의 밀리초를 반환하고, Date.now()
는 해당 메소드가 호출된 시점의 밀리초를 반환한다.예제
const time = new Date().getTime() console.log(Date.now()) //1691567030713 console.log(time) //1691567030713 setTimeout(() => { console.log(Date.now()) //1691567031716 console.log(time) //1691567030713 }, 1000)
time (=.getTime())
은 setTimeout 함수 안에 들어가도 그 값이 변하지 않는다. 왜? 이미 new Date() 해서 생성된 순간의 밀리초가 기록되어 있기 때문.
반면,Date.now()
는 해당 메소드가 호출되는 순간마다 다른 값을 가지게 되므로 setTimeout 함수 안에서 1초 뒤에 실행될 경우 이미 생성된 순간의 밀리초를 가진time
보다 1초 느린 값을 갖게 된다.