1、安装
安装方式:Moment.js 中文网
2、常用格式化规则
3、常用日期封装
获取当前日期
// 获取当前日期
export const getCurDate = () => {
// 输出 2021-12-17 11:34:18
return moment().format('YYYY-MM-DD HH:mm:ss')
}
获取N个月前的第一天
// 获取n个月前的第一天
export const getLmStartDate = (n) => {
// 输出 2021-11-01 00:00:00 当前日期2021-12-17 11:29:13
return moment().subtract(n,'M').startOf('month').format('YYYY-MM-DD HH:mm:ss')
}
console.log(getLmStartDate(2)); // 2021-10-01 00:00:00
console.log(getLmStartDate(10)); // 2021-02-01 00:00:00
console.log(getLmStartDate(20)); // 2020-04-01 00:00:00
获取N个月前的最后一天
// 获取N个月前的最后一天
export const getLmEndDate = (n) => {
// return moment().subtract(1,'M').endOf('month').format('YYYY-MM-DD HH:mm:ss') // 2021-11-30 23:59:59
return moment().subtract(n,'M').endOf('month').hour(0).minute(0).second(0).format('YYYY-MM-DD HH:mm:ss') // 2021-11-30 00:00:00
}
console.log(getLmEndDate(2)); // 2021-10-31 00:00:00
console.log(getLmEndDate(10)); // 2021-02-28 00:00:00
console.log(getLmEndDate(20)); // 2020-04-30 00:00:00
获取本年的第一天
// 获取本年的第一天
export const getCysDate = () => {
return moment().startOf('year').format('YYYY-MM-DD HH:mm:ss'); // 2021-01-01 00:00:00
}
获取本年的最后一天
// 获取本年的最后一天
export const getCyeDate = () => {
// return moment().endOf('year').format('YYYY-MM-DD HH:mm:ss') // 2021-12-31 23:59:59
return moment().endOf('year').hour(0).minute(0).second(0).format('YYYY-MM-DD HH:mm:ss') //2021-12-31 00:00:00
}
获取当月第一天
// 获取当月第一天
export const getCmsDate = () => {
return moment().startOf('month').format('YYYY-MM-DD HH:mm:ss') // 2021-12-01 00:00:00
}
获取当月最后一天
// 获取当月最后一天
export const getCmeDate = () => {
// return moment().endOf('month').format('YYYY-MM-DD HH:mm:ss') // 2021-12-31 23:59:59
return moment().endOf('month').hour(0).minute(0).second(0).format('YYYY-MM-DD HH:mm:ss') // 2021-12-31 00:00:00
}
获取N个月后的第一天
// 获取N个月后的第一天
export const getNmsDate = (n) => {
return moment().add(n,'M').startOf('month').format('YYYY-MM-DD HH:mm:ss') // 2022-01-01 00:00:00
}
console.log(getNmsDate(2)); // 2022-02-01 00:00:00
console.log(getNmsDate(10)); // 2022-10-01 00:00:00
console.log(getNmsDate(20)); // 2023-08-01 00:00:00
获取N个月后的最后一天
// 获取N个月后的最后一天
export const getNmeDate = (n) => {
// return moment().add(1,'M').endOf('month').format('YYYY-MM-DD HH:mm:ss') // 2022-01-31 23:59:59
return moment().add(n,'M').endOf('month').hour(0).minute(0).second(0).format('YYYY-MM-DD HH:mm:ss') // 2022-01-31 00:00:00
}
console.log(getNmeDate(2)); // 2022-02-28 00:00:00
console.log(getNmeDate(10)); // 2022-10-31 00:00:00
console.log(getNmeDate(20)); // 2023-08-31 00:00:00
获取N个月前的日期
// 获取N个月前的日期
export const getNmlDate = (n) => {
// 获取的时分秒是当前日期的时分秒,如果你希望是别的时分秒,则设置hour()、minute()、second()即可
// 如果你不需要时分秒,去掉'HH:mm:ss即可
// return moment().subtract(3,'M').hour(0).minute(0).second(0).format('YYYY-MM-DD HH:mm:ss')
return moment().subtract(n,'M').format('YYYY-MM-DD HH:mm:ss')
}
console.log(getNmlDate(2)); // 2021-10-17 15:15:08
console.log(getNmlDate(5)); // 2021-07-17 15:15:08
console.log(getNmlDate(13)); // 2020-11-17 15:15:48
获取N个月后的日期
// 获取N个月后的日期
export const getNmnDate = (n) => {
return moment().add(n,'M').format('YYYY-MM-DD HH:mm:ss')
}
console.log(getNmnDate(3)); // 2022-03-17 15:22:31
console.log(getNmnDate(10)); // 2022-10-17 15:22:31
console.log(getNmnDate(15)); // 2023-03-17 15:22:31
获取N天前的日期
// 获取N天前的日期
export const getNdaysDate = (n) => {
return moment().subtract(n,'days').format('YYYY-MM-DD HH:mm:ss')
}
console.log(getNdaysDate(3)); // 2021-12-14 15:28:51
console.log(getNdaysDate(27)); // 2021-11-20 15:28:51
console.log(getNdaysDate(366)); // 2020-12-16 15:28:51
获取N天后的日期
// 获取N天后的日期
export const getNdaynDate = (n) => {
return moment().add(n,'days').format('YYYY-MM-DD HH:mm:ss')
}
console.log(getNdaynDate(3)); // 2021-12-20 15:32:14
console.log(getNdaynDate(27)); // 2022-01-13 15:32:14
console.log(getNdaynDate(366)); // 2022-12-18 15:32:14
获取N年前的日期
// 获取N年前的日期
export const getNyearsDate = (n) => {
return moment().subtract(n,'years').format('YYYY-MM-DD HH:mm:ss')
}
console.log(getNyearsDate(3)); // 2018-12-17 16:09:55
console.log(getNyearsDate(39)); // 1982-12-17 16:10:06
console.log(getNyearsDate(100)); // 1921-12-17 16:10:17
获取N年后的日期
// 获取N年后的日期
export const getNyearnDate = (n) => {
return moment().add(n,'years').format('YYYY-MM-DD HH:mm:ss')
}
console.log(getNyearnDate(3)); // 2024-12-17 16:17:06
console.log(getNyearnDate(39)); // 2060-12-17 16:17:06
console.log(getNyearnDate(100)); // 2121-12-17 16:17:06
获取N个星期前的日期
// 获取N个星期前的日期
export const getNweeksDate = (n) => {
return moment().subtract(n,'weeks').format('YYYY-MM-DD HH:mm:ss')
}
console.log(getNweeksDate(2)); // 2021-12-03 16:20:34
console.log(getNweeksDate(10)); // 2021-10-08 16:20:34
console.log(getNweeksDate(58)); // 2020-11-06 16:20:34
获取N个星期后的日期
// 获取N个星期后的日期
export const getNweeknDate = (n) => {
return moment().add(n,'weeks').format('YYYY-MM-DD HH:mm:ss')
}
console.log(getNweeknDate(2)); // 2021-12-31 16:24:08
console.log(getNweeknDate(10)); // 2022-02-25 16:24:08
console.log(getNweeknDate(58)); // 2023-01-27 16:24:08