JavaScript案例---一年中的第几天

这篇博客介绍了如何使用JavaScript的switch语句来计算一年中的第几天。通过示例解释了平年和闰年中不同月份天数的计算,并展示了如何编写代码来确定日期在当年的位置。最后,强调了switch语句的穿透效果和使用注意事项。
摘要由CSDN通过智能技术生成

最近学了条件分支语句-switch,来写一个关于switch的案例

条件分支语句-switch

语法:

switch(已知条件){

case 选项1:...

case 选项2:...

}

1.找到和已知条件完全匹配的选项执行

2.执行完毕代码需要写break,不然会向下穿透

3.可以书写一个default,会在所有选项都不匹配的时候执行

4.当发生穿透效果的时候,会从第一个满足条件的选项开始向下穿透

我们先来简单算一下2022年中的第几天

2022年1月3日是2022年的第3天

2022年3月3日是2022年的第几天呢?

因为2022年是平年,所以2月是28天,则3月3日是31+28+3=62天

今天是10月24日,看看我们怎么用代码实现今天是2022年的第几天?

先定义三个变量year month date 在准备一个变量接收统计结果

年:有平年和闰年

月:按照月份累加之前月份的整月天数

        1月不需要累加,而二月需要累加1月整月的天数

日:需要根据平年和闰年计算2月的天数

因为没有break时会向下穿透,当发生穿透效果的时候,会从第一个满足条件的选项开始向下穿透

所以跟我们需求刚好相反,所以应该将代码反过来

 

 

我们需要考虑年份是闰年还是平年,因为平年2月有28天,闰年2月有29天,所以要给他加一个if语句

if (year % 4 === 0 && year % 100 !== 0 || year % 400 === 0) {
                    total += 29
                } else {
                    total += 28
                }
            case 2: total += 31;
        }

然后计算总和:

total += date

完整代码如下:

<script>
        // 准备三个变量,分别表示年 月 日
        var year = 2022
        var month = 10
        var date = 24
        // 准备一个变量统计结果
        var total = 0
        // 使用switch叠加月份信息
        switch (month) {
            case 12: total += 30;
            case 11: total += 31;
            case 10: total += 30;
            case 9: total += 31;
            case 8: total += 31;
            case 7: total += 30;
            case 6: total += 31;
            case 5: total += 30;
            case 4: total += 31;
            case 3: total += 30;
                if (year % 4 === 0 && year % 100 !== 0 || year % 400 === 0) {
                    total += 29
                } else {
                    total += 28
                }
            case 2: total += 31;
        }

        total += date
        console.log('是今年的第' + total + '天')

    </script>

结果:

是不是很方便呢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值