var years=prompt("请输入您的出生年份");
var months=prompt("请输入您的出生月份");
var days=prompt("请输入您的出生日期");
//判断用户输入格式
function userText(){
if(isNaN(years) && isNaN(months) && isNaN(days)){
alert("必须输入数字");
return false;
}
if(!(years&&months&&days)){
alert("不能为空");
return false;
}
if(months<=0 || months>12){
alert("请输入正确的月份!");
return false;
}else{
return true;}
}
//判断闰年
function isLeapYear(){
return (years%4==0 && years%100!=0 || years%400==0)
}
// 整理每个月的天数
var monthDay=[31,28,31,30,31,30,31,31,30,31,30,31];
var monthnub=parseInt(months);
function numDay(){
switch(parseInt(months)){
case 1:
return parseInt(days);
break;
case 2:
return parseInt(days)+monthDay[0];
break;
if(isLeapYear()){
monthDay[1]=29;
}
case 3:
return parseInt(days)+monthDay[0]+monthDay[1];
break;
case 4:
return parseInt(days)+monthDay[0]+monthDay[1]+monthDay[2];
break;
case 5:
return parseInt(days)+monthDay[0]+monthDay[1]+monthDay[2]+monthDay[3];
break;
case 6:
return parseInt(days)+monthDay[0]+monthDay[1]+monthDay[2]+monthDay[3]+monthDay[4];
break;
case 7:
return parseInt(days)+monthDay[0]+monthDay[1]+monthDay[2]+monthDay[3]+monthDay[4]+monthDay[5];
break;
case 8:
return parseInt(days)+monthDay[0]+monthDay[1]+monthDay[2]+monthDay[3]+monthDay[4]+monthDay[5]+monthDay[6];
break;
case 9:
return parseInt(days)+monthDay[0]+monthDay[1]+monthDay[2]+monthDay[3]+monthDay[4]+monthDay[5]+monthDay[6]+monthDay[7];
break;
case 10:
return parseInt(days)+monthDay[0]+monthDay[1]+monthDay[2]+monthDay[3]+monthDay[4]+monthDay[5]+monthDay[6]+monthDay[7]+monthDay[8];
break;
case 11:
return parseInt(days)+monthDay[0]+monthDay[1]+monthDay[2]+monthDay[3]+monthDay[4]+monthDay[5]+monthDay[6]+monthDay[7]+monthDay[8]+monthDay[9];
break;
case 12:
return parseInt(days)+monthDay[0]+monthDay[1]+monthDay[2]+monthDay[3]+monthDay[4]+monthDay[5]+monthDay[6]+monthDay[7]+monthDay[8]+monthDay[9]+monthDay[10];
break;
}
}
numDay();
isLeapYear();
userText();
document.write("你的生日是在" + years + "年的第" + numDay()+ "天");请问numDay()里面的函数该如何简化,实在是js很新很新的新人。麻烦大牛修改一下,能让我看得懂的方法
3 回答
已采纳
qq_青枣工作室_0
TA贡献446条经验 获得超754个赞
var years=prompt("请输入您的出生年份"); var months=prompt("请输入您的出生月份"); var days=prompt("请输入您的出生日期"); function numDay() { // 与当年的第一天的时间差值,得到天数 return (new Date(years,months-1,days).getTime()-new Date(years,0,1).getTime())/(24*3600*1000)+1; } document.write("你的生日是在" + years + "年的第" + numDay()+ "天");
你那些太烦了 直接给你写个
我爱吃牛排
TA贡献47条经验 获得超127个赞
var year=parseInt(prompt("请输入您的出生年份")); var month=parseInt(prompt("请输入您的出生月份")); var day=parseInt(prompt("请输入您的出生日期")); var num; switch(month){ case 1: num=0; break; case 2: num=31; break; case 3: num=59; break; case 4: num=90; break; case 5: num=120;break; case 6: num=151;break; case 7: num=181;break; case 8: num=212;break; case 9: num=243;break; case 10: num=273;break; case 11: num=304;break; case 12: num=334;break; } num = num + day; if(year%4==0&&year%100!=0||year%400==0){ if(month>3){ num++; } } document.write("你的生日是在" + year + "年的第" + num+ "天");
你那些太烦了 直接给你写个
添加回答
举报
0/150
提交
取消