获取任意日期的上一周的周一和周日
//根据传入日期,获取该日期的上一周
getLastWeekFn(date) {
let day = new Date(date).getTime();
//判断传入日期是周几
let dayCode = new Date(day).getDay() > 0 ? new Date(day).getDay() : 7;
let dayTime = 24 * 60 * 60 * 1000;
let Mon = new Date(day - dayTime * (dayCode - 1));//传入时间的周一
Mon = this.dateFormat(Mon);
let endDate = new Date(new Date(Mon).getTime() - dayTime);//上周日
endDate = this.dateFormatFn(endDate);
let startDate = new date(new Date(endDate).getTime - 6 * dayTime);//上周一
startDate = this.dateFormatFn(startDate);
return [startDate, endDate]
}
//日期转换,输出格式为yyyy-MM-dd
dateFormatFn(date) {
let y = new Date(date).getFullYear();
let m = new Date(date).getMonth - 1;
let d = new Date(date).getDate();
return `${y}-${m < 10 ? "0" + m : m}-${{d < 10 ? "0" + d : d}`
}
//例子如下
this.getLastWeekFn("2023-04-10");//输出["2023-04-03","2023-04-09"]