이번달의 첫날과 마지막날 알아내기 |
5월의 시작하는 날과 마지막날을 알아내는 것을 가정해본다.
var startDayOfMay = new Date(2012, 4, 1);
var endDayOfMay = new Date(2012, 5, 0);
console.log("startDayOfMonth : " + startDayOfMay + ", endDayOfMonth : " + endDayOfMay);
>> 결과
startDayOfMonth : Tue May 01 2012 00:00:00 GMT+0900 (KST), endDayOfMonth : Thu May 31 2012 00:00:00 GMT+0900 (KST)
생성한 Date 객체에서 월(Month)의 값을 꺼내면 어떤 값이 나올까? |
var today = new Date();
console.log("Date : " today + ", Month : " +today.getMonth());
>> 결과
Date : Tue May 15 2012 16:26:13 GMT+0900 (KST), Month : 4
출력된 Date 문자열은 분명 5월(May)를 나타내고 있는데, Date 객체에서 추출한 Month는 4가 나타났다.
이렇게 나타나는 이유는 자바스크립트의 Date 객체에서 월Month 가 0부터 시작하기 때문이다.
0 = 1월, 1 = 2월, 2 = 3월, ..., 10 = 11월, 11 = 12월.
확인하는 방법은 간단하다.
var modifyDate = new Date(2012, 0, 1);
console.log("Date : " modifyDate + ", Month : " + modifyDate.getMonth());
>> 결과
Date : Sun Jan 01 2012 00:00:00 GMT+0900 (KST), Month : 0
var modifyDate = new Date(2012, 11, 1);
console.log("Date : " modifyDate + ", Month : " + modifyDate.getMonth());
>> ru
Date : Sat Dec 01 2012 00:00:00 GMT+0900 (KST), Month : 11
왜 0부터 시작할까? |
위의 사이트로 가보면, 마지막 Date.prototype... 코드 부분에 월Month을 배열Array로 처리하는 것을 확인할 수 있는데, 컴퓨터에서 사용하는 배열의 순서Index는 0부터 시작한다는 것을 생각해보면 어느정도 유추해볼 수 있을 듯 하다. getMonth()를 하면 객체가 속한 달의 순서Index값을 내놓는 것이라 생각해볼 수 있을 것 같다.
'Javascript' 카테고리의 다른 글
AngularJS Fundmentals 60-ish Minute 정리 (0) | 2013.09.16 |
---|---|
Javascript, Json Array 정렬하기 sorting (2) | 2013.07.10 |
JSON 데이터 정렬하기 (2) | 2012.01.26 |
클라이언트 측 객체 계층구조 (0) | 2011.09.16 |
전화번호 검증 스크립트(숫자만 입력 가능) (0) | 2011.08.16 |