//根据日期获取一周的第一天和最后一天
function getDate(dateStr) {
const date = new Date(dateStr);
const week = date.getDay(); // 获取该日期在一周中的第几天,0-6,0 表示星期日,
/*一周从周一至周日*/
const startTime = new Date(date.getTime() - (week - 1) * 24 * 60 * 60 * 1000);//周一日期的中国标准时间
const endTime = new Date(date.getTime() + (7 - week) * 24 * 60 * 60 * 1000);//周日日期的中国标准时间
/*一周从周日至周六*/
// const startTime = new Date(date.getTime() - week * 24 * 60 * 60 * 1000);//周日日期的中国标准时间
// const endTime = new Date(date.getTime() + (6 - week) * 24 * 60 * 60 * 1000);//周六日期的中国标准时间
return {
startTime: startTime.toLocaleDateString(),//toLocaleDateString()把Date对象的日期部分转换为字符串,并返回结果
endTime: endTime.toLocaleDateString()
};
}
函数使用
let {startTime,endTime} = getDate('2023-03-20');
console.log(startTime,endTime) //2023-03-20,2023-03-26