Programing/javascript

자바스크립트 Date 객체 소개, 예제, 그리고 심화 활용법

2025. 4. 24. 08:52
반응형

연관글

    • 2025.04.24 - [Programing/javascript] - 자바스크립트 날짜 다루기: Date vs dayjs vs date-fns
    • 2025.04.24 - [Programing/javascript] - moment.js 소개, 사용법, 그리고 심화 이해

자바스크립트에서 날짜와 시간을 다루기 위해 가장 기본적으로 사용하는 객체는 Date입니다. 브라우저 내장 객체로 별도의 설치 없이 사용할 수 있으며, 시간 생성, 포맷 추출, 시간 연산 등 다양한 기능을 제공합니다. 이 글에서는 Date 객체의 기본 사용법부터 유용한 예제, 그리고 실무에서 활용할 수 있는 심화 팁까지 정리해보겠습니다.


✅ Date 객체 생성 방법

const now = new Date(); // 현재 시간
const specific = new Date("2024-04-01T12:00:00"); // 지정된 시간
const fromValues = new Date(2024, 3, 1, 12, 0, 0); // (연, 월, 일, 시, 분, 초)
  • 월(Month)은 0부터 시작하므로 3은 4월을 의미합니다.

📌 주요 메서드 소개

const date = new Date("2024-04-01T12:34:56");

console.log(date.getFullYear()); // 2024
console.log(date.getMonth()); // 3 (4월)
console.log(date.getDate()); // 1
console.log(date.getDay()); // 1 (월요일)
console.log(date.getHours()); // 12
console.log(date.getMinutes()); // 34
console.log(date.getSeconds()); // 56

🧪 날짜 포맷팅 (기본 제공 메서드)

const now = new Date();
console.log(now.toISOString()); // ISO 8601 포맷: "2024-04-01T03:21:00.000Z"
console.log(now.toDateString()); // "Mon Apr 01 2024"
console.log(now.toLocaleDateString("ko-KR")); // "2024. 4. 1."

⏳ 시간 간 계산

const start = new Date("2024-01-01");
const end = new Date("2024-04-01");

const diffMs = end - start; // 밀리초 차이
const diffDays = diffMs / (1000 * 60 * 60 * 24);
console.log(diffDays); // 91
  • 단순한 날짜 차이는 직접 계산이 가능하지만, 시간대 고려 시 주의 필요

🔄 날짜 조작 (직접 연산)

const date = new Date();
date.setDate(date.getDate() + 7); // 7일 후로 이동
console.log(date);
  • setDate, setMonth, setFullYear 등으로 직접 변경 가능

⚠️ 주의할 점

  • Date는 타임존 처리에 한계가 있으며, 복잡한 포맷 지정도 불편
  • 브라우저별 동작 차이가 존재할 수 있으므로, 국제화가 필요한 경우 라이브러리 사용 권장 (dayjs, date-fns 등)

✅ 결론

자바스크립트의 Date 객체는 범용적으로 활용 가능하며, 간단한 날짜 계산이나 포맷 변경에는 매우 유용합니다. 하지만 복잡한 요구사항이 있는 경우에는 외부 라이브러리를 함께 사용하는 것이 좋습니다.

반응형

'Programing > javascript' 카테고리의 다른 글

자바스크립트 실무 유틸 함수 시리즈  (0) 2025.04.29
DOM 조작 vs Virtual DOM (React 비교 포함) 정리  (0) 2025.04.29
JSON.stringify vs JSON.parse 제대로 이해하기  (0) 2025.04.29
fetch로 REST API 호출하기: 기본 사용법, 응답 처리, 에러 처리까지  (0) 2025.04.29
moment.js 소개, 사용법, 그리고 심화 이해  (0) 2025.04.24
자바스크립트 날짜 다루기: Date vs dayjs vs date-fns  (0) 2025.04.24
브라우저 저장소 정리: localStorage vs sessionStorage vs cookie  (0) 2025.04.24
자바스크립트 이벤트 위임(Event Delegation)과 성능 최적화  (0) 2025.04.24
'Programing/javascript' 카테고리의 다른 글
  • JSON.stringify vs JSON.parse 제대로 이해하기
  • fetch로 REST API 호출하기: 기본 사용법, 응답 처리, 에러 처리까지
  • moment.js 소개, 사용법, 그리고 심화 이해
  • 자바스크립트 날짜 다루기: Date vs dayjs vs date-fns
Dongkkase
Dongkkase
개발자로 일하면서 부딪히는 문제풀이가 누군가에게 도움이 되길 바라며
    반응형
  • Dongkkase
    정집사의 개발로그
    Dongkkase
  • 전체
    오늘
    어제
    • All (478)
      • 금융 (61)
      • Programing (295)
        • Algorithm (39)
        • API (2)
        • javascript (122)
        • CSS (8)
        • HTML (10)
        • PHP (15)
        • JAVA (27)
        • JSP (17)
        • JSP 예제 (1)
        • IOS (1)
        • Android (1)
        • Sencha Touche (1)
        • bat file, cmd (0)
        • 디버깅 (2)
        • SQL (21)
        • MS-SQL (1)
        • MySQL (13)
        • 보안 (5)
      • Server (14)
        • Docker (1)
        • Windows (9)
        • Linux (3)
        • jeus (1)
      • Database (6)
      • IT 일반 (15)
      • 리뷰 (38)
        • Book (17)
        • 제품 (2)
        • 영화 소개 (11)
        • 음악 소개 (7)
      • 잡생각 (36)
        • 회고 (3)
        • 컬럼 (4)
        • 자료실 (6)
        • 낙서장 (12)
        • 위시리스트 (2)
        • WOW (1)
        • 덕 (1)
  • 인기 글

  • 최근 댓글

  • 태그

    php
    자바스크립트유틸
    IT 관련
    디자인패턴
    사고 싶은 책
    JavaScript
    IT블로그
    iT's MY LiFE
    SQL
    자바
    js패턴
    IT·컴퓨터
    자바스크립트
    읽고 싶은 책
    jsp
    기초
    블로그
    It
    위시리스트
    Java
Dongkkase
자바스크립트 Date 객체 소개, 예제, 그리고 심화 활용법
상단으로

티스토리툴바