JavaScript의 getMonth()가 이전 달을 반환하는 이유는 무엇입니까?
"Sun Jul 7 형식으로 날짜를 제공하는 날짜 선택기를 사용하는 경우 00:00:00 EDT 2013", getMonth() 메서드가 이전 달을 반환하는 것을 볼 수 있습니다. 예를 들어, 아래 코드 조각은 다음과 같습니다.
var d1 = new Date("Sun Jul 7 00:00:00 EDT 2013"); d1.getMonth(); //gives 6 instead of 7
이유:
이러한 불일치의 이유는 JavaScript의 getMonth() 메소드가 월을 할당한다는 사실에 있습니다. 0 기반 인덱스. 따라서 1월에는 0 값이 할당되고 2월에는 1이 할당되는 식입니다. 7월을 나타내는 날짜에 getMonth()를 호출하면 실제로 6월(6)의 값이 반환됩니다.
해결책:
올바른 월을 얻으려면 다음을 수행하세요. 다음 조정 코드를 사용하세요.
d1.getMonth() + 1; //returns the correct month, which is 7 for July
getMonth()의 결과에 1을 추가하면 0부터 시작하는 인덱스를 오프셋하고 달력 규칙에 따라 월을 얻을 수 있습니다.
위 내용은 JavaScript의 getMonth()가 왜 이전 달의 값을 산출합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!