1.获取前一天或几天的时间
getDayBefore(day = 1) {
const currentDate = new Date();
const previousDate = new Date(
currentDate.getTime() - 24 * 60 * 60 * 1000 * day
);
const previousYear = previousDate.getFullYear();
const previousMonth = previousDate.getMonth() + 1;
const previousDay = previousDate.getDate();
return `${previousYear}-${
previousMonth > 10 ? previousMonth : '0' + previousMonth
}-${previousDay}`;
},
2.获取后一天或几天的时间
getDayAfter(day = 1) {
const currentDate = new Date();
const previousDate = new Date(
currentDate.getTime() + 24 * 60 * 60 * 1000 * day
);
const previousYear = previousDate.getFullYear();
const previousMonth = previousDate.getMonth() + 1;
const previousDay = previousDate.getDate();
return `${previousYear}-${
previousMonth > 10 ? previousMonth : '0' + previousMonth
}-${previousDay}`;
},
3.获取上个月的时间
getLastMonth() {
const currentDate = new Date();
let currentMonth = currentDate.getMonth();
currentMonth--;
if (currentMonth < 0) {
currentMonth = 11;
currentDate.setFullYear(currentDate.getFullYear() - 1);
}
currentDate.setMonth(currentMonth + 1, 0);
const previousYear = currentDate.getFullYear();
const previousMonth = currentDate.getMonth() + 1;
const previousDay = currentDate.getDate();
const previousMonthString = `${previousYear}-${previousMonth}-${previousDay}`;
return {
firstTime: `${previousYear}-${previousMonth}-1`,
lastTime: previousMonthString,
};
},
4.获取当月天数以及当月第一天星期
function getDayCounts(year, month) {
const total = new Date(year, month, 0).getDate();
const firstWeekDay = new Date(year, month - 1, 1).getDay();
return { total, firstWeekDay };
}
5.判断是否是闰年
function isLeapYear(year) {
return (
(Number.isInteger(year / 4) && !Number.isInteger(year / 100)) ||
Number.isInteger(year / 400)
);
}
6.获取一年当中的每一天
function getDaysInMonth(year, month) {
const daysInMonth = new Date(year, month, 0).getDate();
const daysArray = [];
for (let day = 1; day <= daysInMonth; day++) {
daysArray.push(`${year}-${padZero(month)}-${padZero(day)}`);
}
return daysArray;
}
function getAllYear() {
const arr = [];
for (let i = 1; i <= 12; i++) {
const res = getDaysInMonth(2020, i);
arr.push(...res);
}
return arr;
}
function padZero(number) {
return number > 9 ? number : `0${number}`;
}
7.年份按照一周排列