1、根据给定的日期获取当前日期月份的最后一天
let year = new Date('2024-08-15').getFullYear(); // 获取当前年份
let month = new Date('2024-08-15').getMonth(); // 获取当前月份
let date = new Date(year, month + 1, 0).getDate();
console.log(data) //当前月份的最后一天 31
2、使用moment获取当前日期的月份的第一天和最后一天
moment().month(moment().month()).startOf('month').format('YYYY-MM-DD')// 第一天
moment().month(moment().month()).endOf('month').format('YYYY-MM-DD') //最后一天
3、使用moment操作当前选中的日期不能超过多少个月
const beginDate =moment(this.searchData.beginDate);//开始时间
const endDate =moment(this.searchData.endDate);//结束时间
const daysDiff=endDate.diff(beginDate,'months',true);
if(daysDiff >2){
return this.$Message.warning('开始时间和结束时间不能超过两个月’)
}
4、获取当前日期最近的五年
// 获取最近的五年
getLastTenYears() {
const currentYear = new Date().getFullYear();
const startYear = currentYear - 4;
const endYear = currentYear;
const years = [];
for (let year = startYear; year <= endYear; year++) {
years.push(year);
}
return years.reverse();
},
console.log(getLastTenYears()) // [2024, 2023, 2022, 2021, 2020]
5、输入的时间不能小于当前时间
const inputDate = new Date('输入的时间');
// 获取当前日期的Date对象
const today = new Date();
// 将时间部分设置为00:00:00,只比较日期部分
today.setHours(0, 0, 0, 0);
inputDate.setHours(0, 0, 0, 0);
console.log(today, inputDate);
if (inputDate <= today - 1) {
return this.$Message.warning('输入的阀门时间不能小于当前时间')
}
6、开始时间不能大于结束时间
//输入的开始时间
const inputBeginDate = new Date(this.searchData.beginDate);
// 输入的结束时间
const inputEndDate = new Date(this.searchData.endDate);
inputEndDate.setHours(0, 0, 0, 0);
inputBeginDate.setHours(0, 0, 0, 0);
// 如果开始时间大于结束时间,返回一个 true
if (inputBeginDate > inputEndDate) {
return true;
}
7、获取当前日期前n天的日期
let n = 3
//获取当前日期三天前的日期,可以用momont格式化
let date = new Date(new Date().getTime() - 24 * 60 * 60 * 1000 * n)
console.log(momont(date).format('YYYY-MM-DD HH:mm:ss'))// 三天前的日期
8、获取当前日期后n天的日期
let n = 3
//获取当前日期三天前的日期,可以用momont格式化
let date = new Date(new Date().getTime() + 24 * 60 * 60 * 1000 * n)
console.log(momont(date).format('YYYY-MM-DD HH:mm:ss'))// 三天后的日期
9、传入的日期距离今天已经过去多少天了
function untilToday (date) {
// 当前时间
let todayTime = moment()
// 传入的时间
let inputDate = moment(date)
const daysDifference = todayTime.diff(inputDate, 'days');
return daysDifference
}