有人可以用JavaScript指导我的日期范围吗?
我想计算从今天开始的一周和一个月的日期范围;即,如果今天是“2010年7月18日”,本周的范围应该是“11/07/2010 - 8/07/2010” 这个月应该是“01/07/2010 - 18/07/2010”。
感谢您的提前指导。
答案 0 :(得分:5)
试试这个:
var now = new Date();
var nextWeek = new Date(new Date(now).setDate(now.getDate() + 7));
var nextMonth = new Date(new Date(now).setMonth(now.getMonth() + 1));
答案 1 :(得分:1)
我建议你查看优秀的datejs库,它有许多有用的函数来操作日期。
答案 2 :(得分:1)
这是vanilla JS函数,它将日期(或空白)作为输入并返回一个具有该周的开始和结束日期的对象(假设星期一是一周的第一天:))
function rangeWeek (dateStr) {
if (!dateStr) dateStr = new Date().getTime();
var dt = new Date(dateStr);
dt = new Date(dt.getFullYear(), dt.getMonth(), dt.getDate());
dt = new Date(dt.getTime() - (dt.getDay() > 0 ? (dt.getDay() - 1) * 1000 * 60 * 60 * 24 : 6 * 1000 * 60 * 60 * 24));
return { start: dt, end: new Date(dt.getTime() + 1000 * 60 * 60 * 24 * 7 - 1) };
}
console.log(rangeWeek());
console.log(rangeWeek('2013/9/1'));
您可以在周日至周六进行相应更改。