从星期几中获取日期 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 dow = date.getDay() // get the dates "day of week"
  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)))

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章