获取最后一个星期一

时间:2020-06-04 23:55:28

标签: javascript node.js time

我正在尝试从当前一周的星期一开始凌晨12点,所以无论是今天(如果一天是星期一),还是要往回看过去的星期一。

我有以下代码,但不确定从这里去哪里。

Date date = new Date(); date.setDate(date.getDate()

不确定在这里做什么

2 个答案:

答案 0 :(得分:0)

let day = new Date();  // Get current date
day.setDate(day.getDate() - (day.getDay() + 6));

console.log(day.getDay());  // is 1

答案 1 :(得分:0)

一般方法如下:

  1. 获取当前日期。您已经用const date = new Date();
  2. 检查当前日期是否为星期一。 date.getDay()会给您一个0到6之间的数字,对应于周日至周六。
  3. 如果今天不是星期一,请更改日期以减去足够的天数以使我们成为星期一。 date.getDay()将为您提供返回星期日的天数,然后我们需要再返回6天才能返回到上一个星期一:date.setDate(date.getDate() - date.getDay() - 6);
  4. 现在该日期肯定是星期一,请将时间更改为12:00 am:date.setHours(00, 00, 00);

将它们放在一起:

const date = new Date();
if (date.getDay() !== 1) {
   date.setDate(date.getDate() - date.getDay() - 6);
}
date.setHours(00,00,00);