如何从周数和年份获得一周的第一个日期和最后一个日期?

在JavaScript中,我想获得本周的第一个日期和周的最后日期,仅按周数和年份。

例如,如果我输入的是:

2(week),2012

然后我的输出应该是:

2012-01-08 and 2012-01-14

试试这个:

 var year = 2012; var week = 2; var d = new Date("Jan 01, " + year + " 01:00:00"); var w = d.getTime() + 604800000 * (week - 1); var n1 = new Date(w); var n2 = new Date(w + 518400000) console.log(n1); console.log(n2); 

如果一年中的第一天不是周日(或周一)结果不正确,那么对@bardiir的回答稍有改动。 你应该减去第一天的数量。

更改了代码

 firstDay = new Date(2015, 0, 1).getDay(); console.log(firstDay); var year = 2015; var week = 67; var d = new Date("Jan 01, " + year + " 01:00:00"); var w = d.getTime() - (3600000 * 24 * (firstDay - 1)) + 604800000 * (week - 1) var n1 = new Date(w); var n2 = new Date(w + 518400000) console.log(n1); console.log(n2); 

您可以查看并尝试使用以下链接。

如何在JavaScript中获取一周的第一天和最后一天

它可能对你有所帮助。

谢谢。

  dt = new Date(); var firstDateOfWeek=(dt.setDate(dt.getDate()-dt.getDay())); var lastDateOfWeek=(dt.setDate(dt.getDate()+6-dt.getDay()));