DB-Day 2は誕生日の月と日を入力して、あなたの次の誕生日があと何日あるかを計算します.


今日はこのテーマを終わらせて3時間かかりましたが、とても楽しかったです.


	
		
		  5
		
			function show(f){
				var myArray=[];
				var re=/\d+/g;
				birthDay=f.birth.value;
				myArray=birthDay.match(re);
				var day=myArray[1];
				day=parseInt(day);
				var month=myArray[0];
				var year=null;
				month=parseInt(month);
				month-=1;//        。
				var now=new Date();
				var currentMonth=now.getMonth();//        。
				var currentDate=now.getDate();//        。
				if(month>currentMonth){
					year=now.getFullYear();
				}
				else if(month<currentMonth){
					year=now.getFullYear()+1;
				}
				else if(month==currentMonth){
					if(day>=currentDate){
						year=now.getFullYear();
					}
					else{
						year=now.getFullYear()+1;
					}
				}
				//alert(year);        。               。
				var nextBirth=new Date(year,month,day);
				//alert(nextBirth);
				var timeDiff=nextBirth.getTime()-now.getTime();
				leftDays=timeDiff/1000/60/60/24;
				f.result.value=Math.round(leftDays);
			}	
		
	
	
		

:3 29

本プログラムのほとんどのコードは解決年の動的変化にあります.今年の誕生日が過ぎたら、自然と次の誕生日は来年に移ります.