“不知今夕是何年”的周基年解法 | 得物技术
2024年1月5日,周五,本来是个美好的日子,期待着马上到来的周末。可是下午1点多,接到产品一个问题反馈,经过一番排查,23年7月份上线的功能,对于跨年场景的处理有问题,其核心在于“周的年”获取方式不正确。
举个🌰
这是出了什么问题呢?
因为不知今夕是何年啊!!!
ISO-8601标准
ISO-8601是国际标准化组织(ISO)发布的日期和时间表示法的标准,它定义了一种统一的日期和时间格式。ISO-8601标准的目的是提供一种易于理解、易于比较和易于存储的日期和时间表示方法,以便在不同的计算机系统和地区之间进行交互和共享。
周的定义
根据ISO-8601标准的周定义:
一年中的第一个周:一年中的第一个周是包含该年的第一个星期四的周。这意味着该年的第一个周可能会跨越前一年和当前年。
每周的起始日:ISO-8601将周的起始日定义为星期一。
每周的结束日:ISO-8601将周的结束日定义为星期日。
根据这个定义,一年中的周数从1开始,持续到52或53。如果一年的第一个周跨越前一年和当前年,则第一个周的周数是前一年的最后一周,而不是当前年的第一周。
使用ISO-8601的周定义,可以准确地表示和计算一年中的周数。这种定义方式确保了在不同的计算机系统和地区之间,对于特定的日期,可以一致地确定所在的周数。
周基年的定义
根据ISO-8601标准的周基年定义:
一年中的第一个周:一年中的第一个周是包含该年的第一个星期四的周。这意味着该年的第一个周可能会跨越前一年和当前年。
每周的起始日:ISO-8601将周的起始日定义为星期一。
每周的结束日:ISO-8601将周的结束日定义为星期日。
根据这个定义,一年中的周数从1开始,持续到52或53。如果一年的第一个周跨越前一年和当前年,则第一个周的周数是前一年的最后一周,而不是当前年的第一周。
周基年的定义方式使得在计算和表示特定日期所在的周数时更加准确和统一。它确保了在不同的计算机系统和地区之间,对于特定日期所在的周数能够一致地确定。
从“周基年”这个小场景,可以发现编程基础的扎实与否多么重要,很多同学认为八股文没有价值,恰恰就是这种坚实的基础保证下,才能够让我们的业务系统运行顺畅无问题。
往期回顾
文 / 摇浪
关注得物技术,每周一、三、五更新技术干货
要是觉得文章对你有帮助的话,欢迎评论转发点赞~
未经得物技术许可严禁转载,否则依法追究法律责任。
“
扫码添加小助手微信
如有任何疑问,或想要了解更多技术资讯,请添加小助手微信: