it공부 (이야기)

javascript의 Date모듈의 Month는 0월부터 11월 까지 있다.

cantor 2023. 3. 14. 19:55

 

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Date/getMonth

Mdn문서 설명: 
getMonth() 메서드는 지역시간에 근거한 달력을 0-기반 값으로 반환합니다.
(숫자 0은 그 해의 첫 달을 의미합니다.)

 

*이글의 작성일자: 2023/03/14 

 

getFullYear은 2023을 잘 반환한다.

다른 메서드 getDate도 오늘이 14일임을 정확히 알려준다.

 

그런데 getMonth만 시작 숫자가 0을 기반으로 설정되어 있어서

현재 달에 해당하는 숫자보다 1 낮춰서 반환한다.

 

즉, 2를 반환한다.

 

 

 

 

당장 콘솔창을 열어서 아래의 코드를 입력해보면 

2023/2/14를 얻을 수 있다.

const today =new Date();


today.getFullYear()

today.getMonth()

today.getDate()

출력결과

 

비슷한 zero-base 메서드를 찾아보면 getDay는 요일별로 0부터 6까지를 돌려준다.

 

이 표기는 일상에서 잘 쓰이지 않으니까 이해한다.

월화수목금토일을 1부터 7로 치환하여 숫자로 표기하는 방식은 들어본 적이 없다..

 

하지만 달은 1월부터 12월까지 있다는것은 전 세계가 공유하는 표준 시간대 설정에서 정해진 것이다.

대체 왜 getMonth를 저렇게 만들었는지 모르겠다.

 

 

 

 

 

읽어주셔서 감사합니다.

오류나 오타가있다면 댓글로 알려주세요.