gpt4 book ai didi

javascript - MomentJS - 如何按名称选择一周中的所有天?

转载 作者:行者123 更新时间:2023-11-28 06:54:09 25 4
gpt4 key购买 nike

如何使用 momentJS 选择所有相同的工作日?例如:当月的所有星期一。如果该日是该月的 15 日,则该月有两个星期一,从该月的 0 日到 15 日。也许这是某种循环,因为 momenthJS 应该返回两个日期 - 一个表示第一个星期一,第二个表示给定范围内的第二个星期一,依此类推。

或者有没有其他方法可以通过使用任何其他 JavaScript 库来做到这一点?

最佳答案

正如你所说,循环可以解决这个问题

  • 从您指定的日期起提前 4 周搬家,例如如果我们在该月的最后一个星期一,我们将移动到该月的第一个星期一或之前的日期(如果我们移动到上个月,我们仍然可以通过进行更多迭代来获得正确的日期)
  • 获取您所获日期的月份(您获取的所有日期都应为同一月份)
  • 从每次计算出的初始日期向前移动一周,并检查新日期是否与输入日期具有相同的月份

function weekdaysFromMonth (date) {
// all the weekdays previous/next to date should be
// 7 days apart and also have the same month
var month = date.get('month')
// make sure that the start date is 4 weeks before now
// we might go to the previous month but anyway we'll
// get the correct dates by doing more iterations
var start = moment(date).subtract(4 * 7, 'days')
var dates = []

for (var i = 0; i < 10; i += 1) {
start.add(7, 'days')
if (start.get('month') === month) {
dates.push(moment(start))
}
}

return dates
}

document.write(
JSON.stringify(
weekdaysFromMonth(moment()), null, ' '
)
)
<script src="http://momentjs.com/downloads/moment.js"></script>

关于javascript - MomentJS - 如何按名称选择一周中的所有天?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32700705/

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