首页 > 解决方案 > 你如何在 JS 中获得这周的星期二?没有任何库

问题描述

我已经看到关于获得下周一的示例,但我需要获得本周的当前周二。请问那里有人能得到这个吗?我不想使用任何库。

即因为它是星期三 24/04/2019,我想在变量中获取日期 23/04/2019。

var d = new Date();
d.setDate(d.getDate() + ((7 - d.getDay()) % 7 + 2) % 7);
console.log(d)

这是我试图在下周二获得的代码,我只需要在周二获得当前的几周。如果是星期一,那么它会得到第二天的日期,如果是星期五,它会得到前一个星期二,有什么想法吗?

干杯。

标签: javascript

解决方案


从 2 中减去当前星期几,并将其添加到当前日期。

如果当前日期是星期三 ( 3) 2-3 = -1,并且当您添加-1到当前日期时,您会得到前一个日期,即星期二。

如果当前日期是星期一 ( 1),2-1 = 1当您添加1到当前日期时,您会得到下一个日期,即星期二。

var d = new Date();
dayDiff = 2 - d.getDay();
d.setDate(d.getDate() + dayDiff);
console.log(d);

这假设您将星期日视为本周的开始。如果一周从星期一而不是星期日开始,您将不得不特别对待星期日。


推荐阅读