개발브롞으

[JavaScript] 코드 실행 과정 리뷰(1) - Date() 생성자 함수와 new 키워드 본문

WEB/JavaScript

[JavaScript] 코드 실행 과정 리뷰(1) - Date() 생성자 함수와 new 키워드

총명한 주인장 2025. 10. 23. 16:11
728x90
728x90

이번 글은 new 키워드로 Date() 생성자 함수를 실행할 때 실행 과정에 대한 설명글이다.

 


 

★ 이해가 안가는 부분 : new 키워드란? 생성자 함수는 무엇이고 Date는 어떻게 사용되는지?

 

 

[ Date ]

생성자 함수이고, 시간과 날짜 정보를 담을 수 있는 객체를 만들 때 사용하는

=> JavaScript의 내장된 객체

 

[ new 키워드 ]

생성자 함수를 실행 새로운 객체를 만들어주는 역할

=> 틀(ex. Date)로부터 실제 제품 하나(ex. new Date())를 만드는 것이라고 생각하면 됨

 

 

예제 1)

Date 생성자 함수로부터 새로운 날짜 객체를 하나 만들어줘

=> 현재 날짜와 시간 정보가 들어간 Date 객체를 새로 만듬

new Date()

 

결과값

// 현재 날짜 기준으로 출력됨 - 2025년 10월 23일 오후 3시 32분 기준
Thu Oct 23 2025 15:32:00 GMT+0900 (Korean Standard Time)

 

 

★ 정리하면 위의 코드는 아래의 진행 방식으로 구성됨

=> 내장된 날짜 생성자 함수인 Date 사용 new → 키워드를 사용해 새로운 객체를 생성해줌 → ()를 붙여 생성자를 실행 → 현재 날짜와 시간을 담은 Date 객체 생성

 


 

[ 특정 날짜 객체 생성하기 ]

특정 날짜 객체를 생성하고 싶다면 아래 코드처럼 작성

* 이때 월은 0부터 시작 (ex. 0은 1월)

new Date(2020, 0, 1)

 

 

[ Date 객체의 메서드 종류 ]

=> Date 객체 내부에 정의된 다양한 메서드를 통해 원하는 값을 뽑을 수 있음

* 이때 메서드들이 반환하는 값은 숫자형 데이터를 반환함

// 연도 (예: 2025)
.getFullYear()

// 월 (0~11로 반환, 0=1월)
.getMonth()

// 일 (1~31)
.getDate()

// 시 (0~23)
.getHours()

// 분 (0~59)
.getMinutes()

// 초 (0~59)
.getSeconds()

 

 

[ Date()에서 new 키워드의 역할 ]

아래 코드처럼 new 키워드 사용 시, 결과값의 데이터형은 객체

const now = new Date();
console.log(now);

// 결과
Thu Oct 23 2025 15:35:00 GMT+0900 (Korean Standard Time)

 

아래 코드처럼 new 키워드 사용 안할 시, 결과값의 데이터형은 문자열

const now = Date();
console.log(now);

// 결과
Thu Oct 23 2025 15:35:00 GMT+0900 (Korean Standard Time)

// 따라서 아래 코드처럼 Date 객체 전용 메서드 사용 시 오류 발생
Date().getFullYear(); // ❌ 오류 발생
728x90
728x90
Comments