我。。上传错文件了。。麻烦老师们在这帮我看下

来源:1-20 作业题

wcewfwefe

2019-02-12 17:05:06

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>出生日期</title>
</head>
<body>
    <script>
        
        var year=prompt("请输入您的出生年份"),
            month=prompt("请输入您的出生月份"),
            day=prompt("请输入您的出生日期"),
            trueDay=0,
            feb=0;


        function getDay(year,month,day){

            var day=parseInt(day);

            if(isNaN(year) || isNaN(month) || isNaN(day)){
                alert("请输入正确的出生日期");
            }else{
                if((year%4==0 && year%100!=0) || year%400==0){
                    feb=28;
                }else{
                    feb=29;
                }  

                switch(month){
                    case "1":
                    trueDay=day;
                    break;
                    case "2":
                    trueDay=31+day;
                    break;
                    case "3":
                    trueDay=31+feb+day;
                    break;
                    case "4":
                    trueDay=31+feb+31+day;
                    break;
                    case "5":
                    trueDay=31+feb+31+30+day;
                    break;
                    case "6":
                    trueDay=31+feb+31+30+31+day;
                    break;
                    case "7":
                    trueDay=31+feb+31+30+31+30+day;
                    break;
                    case "8":
                    trueDay=31+feb+31+30+31+30+31+day;
                    break;
                    case "9":
                    trueDay=31+feb+31+30+31+30+31+31+day;
                    break;
                    case "10":
                    trueDay=31+feb+31+30+31+30+31+31+30+day;
                    break;
                    case "11":
                    trueDay=31+feb+31+30+31+30+31+31+30+31+day;
                    break;
                    default:
                    trueDay=31+feb+31+30+31+30+31+31+30+31+30+day;
                    

                }
                 document.write("您的出生日为当年的第"+trueDay+"天。");

            }
        }

        getDay(year,month,day);

        
    </script>
</body>
</html>


写回答

2回答

好帮手慕夭夭

2019-02-12

你好同学 , 计算结果不对 . 闰年的2月份应该是29天 . 平年的2月份是28天 . 如下修改:

http://img.mukewang.com/climg/5c629cdb0001193a07090128.jpg

另外 , 当你输入错误的时候 , 弹窗错误提示之后 .不会再重新弹出日期输入框了 . 本阶段作业不需要进行输入验证 .如果同学想要自己扩展功能的话 , 建议使用循环 .例如while循环 . 当日期输入错误的时候 ,可以循环弹出输入内容 .自己先尝试一下 .如果中间哪里卡住了 .可以在问答区域提问 . 老师会针对代码给你指导的 .

祝学习愉快 ,望采纳 .

1

wcewfwefe

提问者

2019-02-12

知道switch那边有一点冗余可以优化一下,看看其他的!

0

0 学习 · 36712 问题

查看课程