> 웹 프론트엔드 > JS 튜토리얼 > javascript_time 및 date에서 다음 달의 첫날과 요일을 가져옵니다.

javascript_time 및 date에서 다음 달의 첫날과 요일을 가져옵니다.

WBOY
풀어 주다: 2016-05-16 17:52:49
원래의
2971명이 탐색했습니다.

코드 복사 코드는 다음과 같습니다.

var odatef = new Date()
odatef .setFullYear(2012);
odatef.setMonth(5)
odatef.setDate(1);
fday = ordatef.getDay()

5월은 30일인데 위 코드를 통해 다음 달, 즉 6월 1일이 무슨 요일인지를 얻어야 할까요? 그리고 이를 변수 fday에 할당합니다.
물론, 올바르게 가져올 수 있습니다.
프로세스는 다음과 같습니다.
1. 그러면 odatef.setFullYear(2012)가 실행됩니다. , 2012 Day;
2. odatef.setMonth(5); 그러면 odatef 객체는 다음과 같습니다.
3. 그러면 odatef. 객체는 다음과 같습니다: 2012년 6월 1일;
4. 다음 문장을 실행합니다. ordatef.getDay(); 그러면 우리가 얻는 것은 2012년 6월 1일, 정확히 우리가 원하는 요일입니다!


오늘이 5월 31일이라면 위와 같은 코드를 사용하면 다음달 요일을 정확하게 구할 수 없습니다.
이유:
1. odatef.setFullYear(2012)를 실행합니다. 그러면 odatef 개체는 2012년 5월 31일입니다.
2. 그러면 odatef 개체가 실행됩니다. be: June 31, 2012; 문제는 두 번째 단계에 있습니다. June에는 31일이 없으므로 odatef 개체는 다음과 같습니다. 7월에 31일이 없으면 odatef 개체는 다음과 같습니다. 31일이 있을 때까지 계속해서 8월로 이동합니다.
3. 이 문장을 실행합니다. odatef.setDate(1) 그러면 odatef 개체는 다음과 같습니다.
4. .getDay(); 그러면 우리가 얻는 것은 2012년 7월 1일, 요일입니다. 이는 우리가 원하는 것이 아닙니다! ~
해결 방법: 명세서 위치를 변경하고 날짜를 먼저 설정한 다음 월을 설정하세요!
코드 복사 코드는 다음과 같습니다.

var odatef = new Date()
odatef .setFullYear(2012);
odatef.setDate(1);
odatef.setMonth(6)
fday = ordatef.getDay()

1. 이 문장을 실행하면 odatef.setFullYear(2012); 2. 이 문장을 실행하면 odatef.setDate(1)가 됩니다.
3 . 이 문장을 실행합니다. odatef.setMonth(5); 그러면 odatef 객체는 다음과 같습니다.
4. 이 문장을 실행하면 다음과 같습니다. 2012년 6월 1일; 이번주에요! ~~~
요약: 각 문장의 실행 결과가 무엇인지, 무엇이 반환되는지를 이해하는 것이 필요합니다. 나는 항상 연도와 월을 설정하는 것이라고 생각했습니다. 결과나 설정 후 반환되는 내용은 고려되지 않습니다!
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿