gpt4 book ai didi

javascript - 使用 momentjs,如何找到一个月中特定日期的工作日编号,以及给定月份中有多少个工作日

转载 作者:行者123 更新时间:2023-11-30 08:03:55 25 4
gpt4 key购买 nike

使用 momentjs,如何找到一个月中特定日期的工作日数,以及给定月份中有多少个工作日?

给定任何日期,我需要提取它是否是指定月份的第一个、第二个等“星期六”。此外,我需要知道给定月份有多少个“星期六”。 “星期六”只是一个例子。我将有一个单一的日期作为我的引用起点,无论是哪一天,我都需要上述星期几的统计数据。

我开始创建第二个 moment() 并移动第二个对象的星期并比较月份名称...但我想尽可能使用 momentjs native 方法来执行此操作。

最佳答案

dave 提供的答案很好,但需要稍作修改:

Math.floor(DAYS_IN_MONTH / 7) + ((DAYS_IN_MONTH % 7 >= ((X - 1) % 7) + 1) ? 1 : 0)

如果不进行此修改,公式会错误地计算出属于该月第 7 天的工作日的值。例如,在 2 月有 28 天且第 7 天是星期一的情况下,原始公式将计算出有 5 个星期一,而实际上有 4 个。更新后的公式将正确计算出有 4 个星期一。

原文:

Math.floor(28 / 7) + ((28 % 7 >= 7 % 7) ? 1 : 0) =
4 + ((0 >= 0) ? 1 : 0) =
4 + (true ? 1 : 0) =
4 + 1 =
5

更新:

Math.floor(28 / 7) + ((28 % 7 >= ((7 - 1) % 7) + 1) ? 1 : 0) =
4 + ((0 >= (6 % 7) + 1) ? 1 : 0) =
4 + ((0 >= 6 + 1) ? 1 : 0) =
4 + ((0 >= 7) ? 1 : 0) =
4 + (false ? 1 : 0) =
4 + 0 =
4

关于javascript - 使用 momentjs,如何找到一个月中特定日期的工作日编号,以及给定月份中有多少个工作日,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21451363/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com