今天接到一个需求,要求用户选择日期后,展示所选日期的周起始日期,话不多说,开干。。
下面展示一些 内联代码片
。
function getWeekTime(time){
let dayCode = new Date(time).getDay();
let dayLong = 24*60*60*1000;
const obj = {
startDay: new Date(dayCode === 0 ? time-dayLong*7 : time-dayLong*(dayCode-1)),
endDay: new Date(dayCode === 0 ? time : time+dayLong*(7-dayCode))
}
return {
startDay: `${obj.startDay.getMonth() + 1}.${obj.startDay.getDate()}`,
endDay: `${obj.endDay.getMonth() + 1}.${obj.endDay.getDate()}`,
startyear: obj.startDay.getFullYear(),
endyear: obj.endDay.getFullYear(),
}
}
function getWeekTime(time){
const timestamp = new Date(time).getTime();
const dayCode = new Date(time).getDay();
const dayLong = 24 * 60 * 60 * 1000;
const obj = {
startDay: new Date(dayCode === 0 ? timestamp : timestamp - dayLong * dayCode),
endDay: new Date(dayCode === 0 ? timestamp + dayLong * (6 - dayCode) : timestamp + dayLong * (6 - dayCode))
};
return {
startDay: `${obj.startDay.getMonth() + 1}.${obj.startDay.getDate()}`,
endDay: `${obj.endDay.getMonth() + 1}.${obj.endDay.getDate()}`,
startyear: obj.startDay.getFullYear(),
endyear: obj.endDay.getFullYear(),
};
}
function getMonthTime(time){
let currentDay = new Date(time);
let currentFullYear = currentDay.getFullYear();
let currentMonth = currentDay.getMonth();
return {
startDay: new Date(currentDay.setDate(1)),
endDay: new Date(new Date(currentFullYear,currentMonth+1,0))
}
}
记录一下,方便你我他,感觉有用的话点赞收藏一下吧