블로그 이름

[Javascript] getMonth() 메소드가 0부터 시작하는 이유 본문

개발/HTML

[Javascript] getMonth() 메소드가 0부터 시작하는 이유

Hide 2024. 10. 30. 16:04

JavaScript의 에서 날짜를 구할 때 Date 객체를 사용한다.

 

현재 시각일에서 달을 구하려면 new Date().getMonth() 메소드를 사용해야 한다.

 

const today = new Date();
const year = today.getFullYear();
const month = today.getMonth()+1;
const day = today.getDate();

 

 

년, 월, 일을 각각 구하는 코드이다.

 

getMonth() 뒤에만 + 1 이 붙는 걸 확인할 수 있다.

 

getMonth()메소드는 Zero-base로 설정되어 있기 때문에 +1을 해줘야 정상적인 달이 출력된다.

 

JavaScript의 날짜 표기는 Java JDK1.0(1995) 버전을 카피했다고 한다.

 

JAVA에서 날짜와 시간을 다룰 때 java.util.Date 클래스와 java.util.Calendar 클래스를 사용해야 하는데 JDK 8 (2014) 이전 버전에 여러가지 문제점이 있었는데, Zero-base-month 문제가 JDK 8버전 이전까지 계속 있었고, JDK8 이후에 날짜와 시간 API가 개선되었다.

 

JavaScript의 날짜, 시간 표기 방식은 JDK8 이전 방식을 채택하여 발생하는 문제라고 한다.

 

 

'개발 > HTML' 카테고리의 다른 글

[HTML] HTML Canvas 태그  (0) 2025.02.19
[javascript] setTimeout()  (1) 2024.11.07
[HTML] INPUT 입력 이벤트 순서  (0) 2024.10.29