在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);Run Code Online (Sandbox Code Playgroud)
n1包含一周的第一天
n2包含一周的最后一天
至于常数:
604800000是一周,以毫秒为单位
518400000是六天
小智 5
如果一年中的第一天不是周日(或周一)结果不正确,那么对@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);Run Code Online (Sandbox Code Playgroud)
如果您希望第一个是星期日,请将(firstDay-1)更改为
| 归档时间: |
|
| 查看次数: |
15511 次 |
| 最近记录: |