Date 객체와 날짜/시간 다루기
Date 객체는 자바스크립트에서 날짜와 시간을 다룰 때 사용하는 내장 객체입니다. 1970년 1월 1일 UTC(협정 세계시) 자정부터 현재까지 경과한 밀리초(ms)를 기준으로 작동합니다.
게시글 작성 시간, 디데이(D-Day) 계산, 타이머 등 시간에 관련된 모든 로직의 기초가 되며, 연도, 월, 일, 시간 등을 추출하거나 설정하는 다양한 메서드(getFullYear(), getMonth() 등)를 제공합니다. 주의할 점은 자바스크립트의 월(Month)은 0부터 시작한다는 것입니다! (0 = 1월)
<script>
console.log("=== 현재 시간 가져오기 ===");
const now = new Date();
console.log("현재 전체 시간:", now);
// 특정 시간 데이터 추출
const year = now.getFullYear();
const month = now.getMonth() + 1; // ⚠️ 월은 0부터 시작하므로 +1 필요
const date = now.getDate();
const day = now.getDay(); // 0(일요일) ~ 6(토요일)
const days = ['일', '월', '화', '수', '목', '금', '토'];
console.log(`오늘은 ${year}년 ${month}월 ${date}일 ${days[day]}요일 입니다.`);
console.log("\n=== 특정 날짜 생성 및 시간 차이 계산 ===");
const dDay = new Date("2030-01-01T00:00:00"); // 특정 날짜 생성
const diffMs = dDay.getTime() - now.getTime(); // 밀리초(ms) 차이 계산
// 밀리초를 일(Day)로 변환: 1000ms * 60초 * 60분 * 24시간
const diffDays = Math.ceil(diffMs / (1000 * 60 * 60 * 24));
console.log(`2030년 1월 1일까지 ${diffDays}일 남았습니다!`);
</script>