从星期几中获取日期Javascript

我的数据库中有一个模型,其中包含一个名为“AvailableDays”[0...6] 的数组。0 = 周日 & 6 = 周六。我希望将一周中的这一天数转换为本周中的某一天的日期。

例如,这是分解的逻辑

  1. 检索可用天数列表 ( const availableDays = [0,2,4,6])
  2. 获取当前日期 ( const today = new Date('2021-08-20');)
  3. 将日期数字转换为日期 ( output =['15-08-2021', '17-08-2021', '19-08-2021', '21-08-2021'])

回答

您可以做的是从给定Date实例中获取星期几,并计算出可用天的偏移量。

然后从给定日期中减去以天为单位的偏移量以产生您的结果。

const transformDate = (date, day) => {
  const offset = date.getDay() - day
  
  const d = new Date(date)
  d.setDate(d.getDate() - offset)
  return d
}

const availableDays = [0,2,4,6]
const today = new Date("2021-08-20")

console.log(availableDays.map(day => transformDate(today, day)))


以上是从星期几中获取日期Javascript的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>