一起来敲代码 2021-09-14 10:04 采纳率: 80%
浏览 36
已结题

为什么“用总天数算出当月1号的星期数”这步总是不对?

<script>
    var year=prompt("请输入年份:");
    var month=prompt("请输入月份:");
    var allDay=0;

    //计算输入的年份距离1900年的天数
    for(var i=1900;i<=year;i++){
        if((i%4==0&&i%100!=0)||i%400==0){
            allDay+=366;
        }else{
            allDay+=365;
        }
    }

    //当月天数的总数
    var monthDay=0;
    for(var i=1;i<=month;i++){
        switch(i){
            case 1:
            case 3:
            case 5:
            case 7:
            case 8:
            case 10:
            case 12:
                monthDay=31;
                break;
            case 2:
                if((year%4==0&&year%100!=0)||year%400==0){
                    monthDay=29;
                }else{
                    monthDay=28;
                }
                break;
            case 4:
            case 6:
            case 9:
            case 11:
                monthDay=30;
                break;
        }
    }

  //用总天数算出当月1号的星期数
    var day=allDay%7;
    console.log(day);

    //画出日期排布
    document.write("一&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>");
    for(var i=1;i<day;i++){
        document.write("&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;");
    }
    for(var i=1;i<=monthDay;i++){
        document.write(i+"&nbsp;&nbsp;&nbsp;&nbsp;");
        if((i+day)%7==0){
            document.write("<br/>");
        }
    }

为什么“用总天数算出当月1号的星期数”这步总是不对?

  • 写回答

2条回答 默认 最新

  • 峰子哥哥 2021-09-14 10:48
    关注

    获得该月1号为星期几的地方改为以下代码:

        //得出该月一号为星期几
        var day = new Date(year + '/' + month + '/' + '01').getDay();
        if (day === 0) {
            day = 7
        }
    

    另外你还有个地方有问题
    循环里 判断换行的位置改为:

    if ((i - 1 + day) % 7 == 0)
    

    如果能帮到你,望【采纳】谢啦

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 9月22日
  • 已采纳回答 9月14日
  • 创建了问题 9月14日

悬赏问题

  • ¥20 基于MSP430f5529的MPU6050驱动,求出欧拉角
  • ¥20 Java-Oj-桌布的计算
  • ¥15 powerbuilder中的datawindow数据整合到新的DataWindow
  • ¥20 有人知道这种图怎么画吗?
  • ¥15 pyqt6如何引用qrc文件加载里面的的资源
  • ¥15 安卓JNI项目使用lua上的问题
  • ¥20 RL+GNN解决人员排班问题时梯度消失
  • ¥60 要数控稳压电源测试数据
  • ¥15 能帮我写下这个编程吗
  • ¥15 ikuai客户端l2tp协议链接报终止15信号和无法将p.p.p6转换为我的l2tp线路