자바스크립트 날짜 기반은 1970년 1월 1일 UTC(협정 세계시) 자정과의 시간차이를
밀리초 단위로 나타낸 것이며,
대부분의 컴퓨터 구성시간인 UNIX 시간(1970년 1월 1일 자정과의 시간차이를 초 단위로 나타낸 것) 과는
다른 개념이다.
한국의 경우 UTC+9 시간대에 속하므로 기본 UTC 시간에 +9를 해주면, 한국 환산 시간이 나온다.
UTC 03:00시의 경우 한국시간으로 오후12:00 이다. 즉, 한국 시간은 세계 협정시보다 9시간 빠르다는
계산이 나온다.
* Date 함수의 특징
1) Date 객체의 중심을 구성하는 시간은 UTC 로 표기하지만, 실제 날짜와 시간 등을
변환하여 표기할 때, 별도의 옵션을 주지 않을 경우 모두 현지 시간대로 표기한다.
2) Date() .. 이런식으로 호출할 경우 new Date().toString() 과 같은 현재 날짜와 시간을 나타내는 문자열을 반환한다.
3) new Date() 와 같은 생성자로 호출할 경우 새로운 Date()를 창조하며, 보통의 경우 기존의 Date()를
건드리지 않고 생성자를 생성하는 방식을 많이 사용한다.
* 주로 쓰는 메서드
1) 날짜의 연/월/일 시/분/초
- 평상시에는 거의 사용할 일이 없지만 사용하는 경우가 몇 가지 있는데,
1-1) 해당 날짜 중간 중간 한글이나 영어를 삽입하여야 한다거나
1-2) 특정 달력에 해당하는 날이 있는 지 체크하는 등 확인할 때 사용한다.
물론, 1-1의 경우 정규 표현식으로 표현 가능한 방법이지만 모를 경우 이 메서드를 사용한다.
const getYear = new Date('2022-06-10').getFullYear(); Date에서 현지시간 기준 연도를 반환합니다.
console.log('결과 : ',getYear); // 결과 : 2022
const getMonth = new Date('2022-06-10').getMonth(); Date에서 현지시간 기준 월을 반환합니다.
// 0부터 1월이라고 계산된다. 5 = 6월
console.log('결과 : ',getMonth); // 결과 : 5
const getDate = new Date('2022-06-10').getDate(); Date에서 현지시간 기준 일을 반환합니다.
console.log('결과 : ' getDate); // 결과 : 10
const getHours = new Date('2022-06-10 13:00:00').getHours(); Date에서 현지시간 기준 시간을 반환합니다.
// 자세한 시간 옵션을 주지 않을 경우 지역이 한국일 경우 UTC+9시간으로 환산되어 9로만 표기된다.
console.log('결과 : ' getHours); // 결과 : 13
const getMinutes = new Date('2022-06-10 13:15:00').getMinutes(); Date에서 현지시간 기준 분을 반환합니다.
// 자세한 시간 옵션을 주지 않을 경우 0으로만 표기된다.
console.log('결과 : ' getMinutes); // 결과 : 15
const getSeconds = new Date('2022-06-10 13:15:53').getSeconds(); Date에서 현지시간 기준 초를 반환합니다.
// 자세한 시간 옵션을 주지 않을 경우 0으로만 표기된다.
console.log('결과 : ' getSeconds); // 결과 : 53
그 외에도 많은 옵션이 있지만 날짜에서 자주 추출하여 사용하는 것만 나열했다.
2) 날짜의 요일 추출
- 평상시에는 거의 사용할 일이 없지만 캘린더에 일정을 작성한다든지, 특정 요일의 데이터만 가져온다든지 할 때
유용한 메서드이다.
const getDay = new Date('2022-06-10').getDay(); Date에서 현지시간 기준 요일을 반환합니다.
// 0 ~ 6으로 표기되며, 0 : 일, 1: 월, 2: 화, 3: 수, 4: 목, 5: 금, 6: 토 로 구성된다.
console.log('결과 : ' getDay); // 결과 : 5 -> 금요일이다.
3) 날짜의 현재 지역의 형식으로 변환한다.
const getDate = new Date('2022-06-10 13:15:53'); // 가공 전
console.log('결과 : ',getDate); // 결과 : 2022-06-10T04:15:53.000Z
const getDate = new Date('2022-06-10 13:15:53').toLocaleDateString(); // 가공 후
console.log('결과 : ',getDate); // 결과 : 2022. 6. 10.
추가적으로 Date() 함수보다 더 쓰기 편한 Moment.js 도
다뤄봤다. 아래 링크를 클릭하면 이동한다.
'JS' 카테고리의 다른 글
[JS] 변수 및 상수에 관한 호이스팅에 대해 알아보자 (0) | 2025.02.10 |
---|---|
[JS] var , const , let 에 대해 알아보자 (0) | 2025.02.10 |
[JS] String(문자열)에 대해 알아보자 (1) | 2025.02.10 |
[JS] null , undefined 타입에 대해 알아보자 (0) | 2025.02.10 |
[JS]천원단위 콤마(,)정규 표현식 (0) | 2025.02.10 |