moment 取年月日_moment的简单使用

时间:2025-04-01 08:45:45

基础用法--获取时间点

//获取当前时间

moment().format("YYYY-MM-DD HH:mm:ss");

//当前时间的前10天日期

moment().subtract(10, "days").format("YYYY-MM-DD");

//当前时间的前1年时间

moment().subtract(1, "years").format("YYYY-MM-DD");

**//当前时间的前3个月时间**

moment().subtract(3, "months").format("YYYY-MM-DD");

//当前时间的前一个星期时间

moment().subtract(1, "weeks").format("YYYY-MM-DD");

获取时间范围

//获取本日时间

const startDate = moment().format('YYYY-MM-DD');

//获取本周开始结束日期

const startDate=moment().week(moment().week()).startOf('week').format('YYYY-MM-DD'); //年月日的格式

const endDate = moment().week(moment().week()).endOf('week').valueOf(); //时间戳的格式

//获取本月开始结束日期

const startDate = moment().month(moment().month()).startOf('month').valueOf();

const endDate = moment().month(moment().month()).endOf('month').valueOf();

//获取本年开始结束日期

const startDate = moment().year(moment().year()).startOf('year').valueOf();

const endDate = moment().year(moment().year()).endOf('year').valueOf();

封装获取本周、前 n 周、后 n 周开始结束日期(即周一、周日日期)的方法

封装工具类,可直接复制到项目中使用

/**

* 时间日期工具类

*/

import moment from 'moment'

export default {

//获取本周周一和周日日期

getCurrentWeek() {

const start = moment().weekday(1).format('YYYY-MM-DD'); //本周一日期

const end = moment().weekday(7).format('YYYY-MM-DD'); //本周日日期

return {start, end}

},

/**

* 获取前 i 周的周一和周日日期

* 当 i=1,获取的是上周一和上周日的日期;

* 当 i=2,获取的是上上周一和上上周日的日期

* ...

* @param i

*/

getLastWeek(i) {

const weekOfDay = parseInt(moment().format('E'));//计算今天是这周第几天

const last_monday = moment().subtract(weekOfDay + 7 * i - 1, 'days').format('YYYY-MM-DD');//周一日期

const last_sunday = moment().subtract(weekOfDay + 7 * (i - 1), 'days').format('YYYY-MM-DD');//周日日期

return {last_monday, last_sunday}

}

/**

* 获取后 i 周的周一和周日日期

* 当 i=1,获取的是下周一和下周日的日期;

* 当 i=2,获取的是下下周一和下下周日的日期

* ...

* @param i

*/

getNextWeek(i) {

const weekOfDay = parseInt(moment().format('E'));//计算今天是这周第几天

const next_monday = moment().add((7 - weekOfDay) + 7 * (i - 1) + 1, 'days').format('YYYY-MM-DD');//周一日期

const next_sunday = moment().add((7 - weekOfDay) + 7 * i, 'days').format('YYYY-MM-DD');//周日日期

return {next_monday, next_sunday}

}

}

调用实例:

const currentWeek1 = () //获取本周开始结束日期

const currentWeek2 = (0) //获取本周开始结束日期

const currentWeek3 = (0) //获取本周开始结束日期

const lastWeek1 = (1) //获取上周开始结束日期

const lastWeek2 = (2) //获取上上周开始结束日期

const lastWeek3 = (3) //获取前三周开始结束日期

const nextWeek1 = (1) //获取下周开始结束日期

const nextWeek2 = (2) //获取下下周开始结束日期

const nextWeek3 = (3) //获取后三周开始结束日期