日期计算问题
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>1-11作业</title>
</head>
<body>
<script>
var y,m,d;
function getDate(){
y=prompt("请输入您的出生年份");
m=prompt("请输入您的出生月份");
d=prompt("请输入您的出生日期");
parseInt(prompt(y));
parseInt(prompt(m));
parseInt(prompt(d));
if(isNaN(y)){
alert("请输入数字!");
}
if(isNaN(m)){
alert("请输入数字!");
}else{
if(m<1 && m>12){
alert("请输入1~12之间的数字!");
}
}
if(isNaN(d)){
alert("请输入数字!");
}else{
if(d<1 && d>31){
alert("请输入1~31之间的数字!")
}
}
return y,m,d;
}
function day(y,m){
var sum=0;
var myArray=[0,31,28,31,30,31,30,31,31,30,31,30,31];
for(var i=0; i<m; i++){
sum+=myArray[i];
}
if((y%4==0 && y%100!=0) || y%400==0){
if(m>2){
sum+=1;
}
}
return sum;
}
//调用函数
getDate();
var sum1 = day(y,m) + d;
document.write("您的生日在"+y+"年是第"+sum1+"天");
</script>
</body>
</html>试了几个日期感觉不对,不知道为什么。
61
收起
正在回答
2回答
你的代码里将年月日转换为整数是有问题的
如图所示,函数调用后会重复2遍弹出对话框,并且只有整数转换,没有重新赋值,年月日的值还是字符串型,在
中,+号起连接作用。建议将代码修改为:
HTML5与CSS3实现动态网页 2018
- 参与学习 1887 人
- 提交作业 4643 份
- 解答问题 5760 个
有HTML和CSS基础,却不知道如何进阶?本路径带你通过系统学习,完成从“会做网页”到“做出好的动态网页”的蜕变,迈出成为前端工程师的第一步。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星