DB-Day 2は誕生日の月と日を入力して、あなたの次の誕生日があと何日あるかを計算します.
1409 ワード
今日はこのテーマを終わらせて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);
}
本プログラムのほとんどのコードは解決年の動的変化にあります.今年の誕生日が過ぎたら、自然と次の誕生日は来年に移ります.