상호 작용이 필요하고 JS는이를 구현하도록 선택되며, 이는 쌍 프로그래밍의 첫 번째 테스트로 간주 될 수 있습니다. HTML에 디스플레이 부분을 썼고 버튼 클릭 된 트리거 이벤트 기능은 check ()입니다.
코드 사본은 다음과 같습니다.
oncheck () {
var heay.getElementById (연도). // 숫자 유형으로 변환하십시오
var month = document.getElementById (월);
var index1 = selectedIndex = month.options [index1]
var day = document.getElementById (day);
var index2 = day.SelectedIndex;
var theday = day.options [index2] .Value;
// 입력 값 판단 부분
...
// 코어 함수 호출
날 (그들, Themonth, Theday);
}
핵심 기능 일은 다음과 같습니다.
코드 사본은 다음과 같습니다.
기능 일 (연도, 월, 일) {
var days = 0; // // 변경 날짜가 연중과 동일한 날을 나타냅니다.
// 누적 된 달 수
for (var i = 1; i <month; i ++) {
스위치 (i) {
// 큰 달의 상황은 31 개 더 있습니다
case 1:
사례 3 :
case 5:
사례 7 : 사례 7 : 사례 7 : : 사례 7 : : 사례 7 : : 사례 7 : : 사례 7 : : 사례 7 : : 사례 7 : : 사례 7 : : 사례 7 : : 사례 7 : 사례 7 : 사례 7 : 사례 7 : 사례 7 : 사례 7 : 사례 7 : 사례 7 : 사례 7 : 사례 7 : 사례 7 : 7 : 사례 7 : 사례 7 : 사례 7 : 사례 7 : 사례 7 : 사례 7 : 사례 7 : : 사례 7 : : 사례 7 : 사례 7 : 사례 7 : : 사례 7 : 사례 7 : 사례 7 : : 사례 7 : 사례 7 : 사례 7 : : 사례 7 : : 사례 7 : : 사례 7 : 사례 7 : : 사례 7 : : 사례 7 : 사례 7 : : 사례 7 : : 사례 7 : 사례 7 : 사례.
사례 8 :
case 10:
사례 12 : {
일 += 31;
부서지다;
}
// Xiaoyue의 상황은 30을 추가합니다
case 4:
사례 6 :
case 9:
사례 11 : {
일 += 30;
부서지다;
}
// 2 월의 상황은 연도 유형에 따라 추가됩니다.
사례 2 : {
if (isleapyear (년)) {
Days += 29; // 도약에 29를 추가합니다
}
또 다른 {
일 += 28;
}
부서지다;
}
}
}
day = day * 1;
Days += Day ;/ 일의 합계와 일 수
var date0 = 새로운 날짜 (연도, 0,1);
// alert (date0.getDay ());
var date1 = 새 날짜 (연도, 1 월, 일);
// ALERT ((DAYS + DATE0.GETDAY () + 6)/7);
var nthofweek = Math.floor (Days + Date0.getDay () + 6)/7);
// 경고 (nthofweek);
var today = new Array ( "일요일", "월요일", "화요일", "수요일", "목요일", "금요일", "토요일");
//day.getday (); 주당 0에 따라 일주일에 일요일을 반환합니다.
ALERT ( "이 날짜는 올해의"+Days+"Day/N"+"입니다.
}
디버깅 과정에서 숫자 반올림과 같은 유형 불일치로 인한 계산 오류와 같은 많은 예상치 못한 오류가 발생했습니다.
그의 팀원들의 도움으로 그는 버그 잡기를 검토하고 지원할 책임이 있으며, 나는 구현 및 코딩을 담당합니다.
마지막 부분에서, 입력 값의 테스트에서, 우리는 서로를 잘 지원하고, 다른 입력 상황을 분석하고, 다양한 가능한 사고를 다루며, 기능의 개선을 신속하게 완료했습니다.
다음은 입력 값이 허용되는지 여부를 결정하는 코드입니다.
코드 사본은 다음과 같습니다.
if (isnan (sear) || byear <0) {
ALERT ( "입력이 잘못되었고 다시 입력하십시오");
반품 ;
}
if ((themonth == 2 && theday> 29 && isleapyear (hear)) || (themonth == 2 && theday> 28 &&! isleapyear (hearear)) {
ALERT ( "입력이 잘못되었고 다시 입력하십시오");
반품 ;
}
if ((Themonth == 4 || themonth == 6 || themonth == 9 || themonth == 11) && theday == 31) {
ALERT ( "입력이 잘못되었고 다시 입력하십시오");
반품 ;
}