1.安装
npm install moment
 2.引入
import moment from "moment";
 3.常用的
获取指定日期的时间戳:
 moment('2020-07').startOf('day').format('x')
 当前月:
 moment().format('MM')
  
 当前季度:
 moment().quarter()
  
 当前年:
 moment().format("YYYY") 
 moment().year(); // Number
  
 上一年/下一年:
  1. 上一年 : moment().add(-1,'Q').format("YYYY")
  2. 下一年 : moment().add(1,'Q').format("YYYY")
  3.  上几年和下几年同理,做moment日期加减,月季度亦同理
  
 上一季度/下一季度:
  1. 上一季度:moment().add(-1, 'Q').quarter()
  2. 下一季度:moment().add(1, 'Q').quarter()
  
 上个月/下个月
  1. 上个月:momnet().add(-1,'M').format("MM")
  2. 下个月:moment().add(1,'M').format("MM")
  
 年开始结束时间:
  1. moment().startOf('year')
  2. moment().endOf('year')
  
 季度开始结束时间:
  
  1. 当前季度的开始结束时间:
   moment().startOf('quarter').format("YYYY-MM-DD")
   moment().endOf('quarter').format("YYYY-MM-DD")
  
  2. 指定年指定季度的开始结束时间:(某年某季度的开始结束时间)
  
   moment(moment().format("YYYY-02-        01")).startOf('quarter').format("YYYY-MM-DD")
   moment(moment().format("YYYY-02-01")).endOf('quarter').format("YYYY-MM-DD")
  
 #当天0点的时间格式 :
   moment().startOf('day').format('YYYY-MM-DD HH:mm:ss') 
  
 #当天0点的时间缀,以10位Unix时间戳输出(秒):
   moment().startOf('day').format('X') 
  
 #当天23点59分59秒的时间格式:
   moment().endOf('day').format('YYYY-MM-DD HH:mm:ss')  
  
 #当天23点59分59秒以13位Unix时间戳输出(毫秒):
   moment().endOf('day').format('x')  
  
 #2020-06-30当天0点的以13位Unix时间戳输出(毫秒):
   moment('2020-06-30').startOf('day').format('x')  
  
 #2020-06-30当天24点的以13位Unix时间戳输出(毫秒):
   moment('2020-06-30').endOf('day').format('x') 
 # 获取今天0时0分0秒
 moment().startOf('day')
  
 # 获取本周第一天(周日)0时0分0秒
 moment().startOf('week')
  
 # 获取本周周一0时0分0秒
 moment().startOf('isoWeek')
  
 # 获取当前月第一天0时0分0秒
 moment().startOf('month')
  
 # 获取指定日期的0时0分0秒
 moment('2019-10-20').startOf('day')
  
 # 获取今天23时59分59秒
 moment().endOf('day')
  
 # 获取本周最后一天(周六)23时59分59秒
 moment().endOf('week')
  
 # 获取本周周日23时59分59秒
 moment().endOf('isoWeek')
  
 # 获取当前月最后一天23时59分59秒
 moment().endOf('month')
  
 # 获取当月第一天是星期几(用于设置星期几,其中星期日为 0、星期六为 6)
 moment().startOf('month').day()
  
 获取前n天 / 后n天
 moment().add(7, 'days');
 moment().subtract(7, 'days')
  
 比较两个时间的大小
  
 # 第二个参数用于确定精度,且不仅仅是要检查的单个值,因此使用 day 将会检查年份、月份、日期。
  
 moment('2010-10-31').isBefore('2010-12-31', 'day');
 # true
  
 moment('2010-10-20').isBefore('2010-12-31', 'year');
 # false
  
 moment('2010-10-20').isAfter('2009-12-31', 'year'); 
 # true
  
 moment('2010-10-20').isSame('2009-12-31', 'year'); 
 # 判断两个时间是否相等
  
 # 需要注意的是, isBefore与isAfter 都是开区间,如果想使用闭区间,应使用
 isSameOrBefore
  
 两个时间的相差几天
 moment([2008, 2, 27]).diff([2007, 0, 28], 'day');
 # 424
  
 是否是闰年
  
 moment().isLeapYear();
 # true
  
 moment([2001]).isLeapYear() 
 # false
  
 获取 月份和星期 枚举列表
  
 moment.months()
  
 # ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]
  
 moment.monthsShort()
 # ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
  
 moment.weekdays()
 # ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]
  
 moment.weekdaysMin()
 # ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"]
  
 格式化
 moment().format();
 # 2020-03-14T19:14:05+08:00
  
 moment().format('YYYY-MM-DD HH:mm:ss');
 # 2020-03-14 19:23:29
  
 //获取当前时间
 var now = moment().toDate();//Mon Jul 06 2020 13:50:51 GMT+0800 (中国标准时间)
 console.log(now)
  
 //格式化当前时间
 now = moment().format('YYYY-MM-DD');//2020-07-06
 console.log(now);
  
 //获取这个月初时间
 let startMonth = moment().startOf('month').toDate();
 console.log(startMonth);
  
 //获取今天开始的时间,
 let dayOfStart = moment().startOf('day').toDate();
 console.log(dayOfStart);
  
 //获取今天结束的时间
 let dayOfEnd = moment().endOf('day').toDate();
 console.log(dayOfEnd);
  
  
 //获取+n小时
 let lateHour = moment().add(2,'hour').toDate();
 console.log(lateHour);
  
 //获取+n小时
 console.log('//获取-n小时')
 let beforeHour = moment().subtract(2,'hour').toDate();
 console.log(beforeHour);
  
  
 //获取+n天
 let lateDay = moment().add(+5,'day').toDate();
 console.log(lateDay);
  
 //获取-n天
 let beforeDay = moment().add(-5,'day').toDate();
 console.log(beforeDay);
 //也可以表示为
 beforeDay = moment().subtract(5,'day').toDate();
 console.log(beforeDay);
  
 console.log('//获取+n月')
 let lateMonth = moment().add(2,'month').toDate();
 console.log(lateHour);
  
 //获取+n月
 let beforeMonth = moment().subtract(2,'month').toDate();
 console.log(lateHour);
  
  
  
 //获取星期
 let week = moment().format('dddd');
 console.log(week);
  
 //获取到现在的年限 如果不满一年显示出具体几个月
 let years = moment('2020-12-31').fromNow();
 前三个月(自然月):
  
 moment().month(moment().month() - 3).startOf('month')
  
 moment().month(moment().month() - 1).endOf('month')
  
 上月:
  
 moment().month(moment().month() - 1).startOf('month')
  
 moment().month(moment().month() - 1).endOf('month')
  
 本月:
  
 [moment().startOf('month'), moment().endOf('month')]
  
 7天:
  
 [moment().subtract(7,'day'), moment()]
  
 获取月份天数:
  
 moment().daysInMonth()
  
 判断日期大小
  
 moment('2010-10-20').isAfter('2010-10-19'); // true
  
  
  
关于封装
在tool.js文件中引入
 import moment from "moment"
封装项目中常用的日期转换格式的函数
//--------------------------封装一些常用的函数-----------------------
 import moment from "moment";
  
 // 短时间
 export const shortTime = function (value, formater = "YYYY-MM-DD") {
   return moment(value).format(formater);
 };
  
 // 长时间
 export const time = function (value, formater = "YYYY-MM-DD HH:mm:ss") {
   return moment(value).format(formater);
 };
  
 // 长时间
 export const time1 = function (value, formater = "YYYY/MM/DD HH:mm:ss") {
   return moment(value).format(formater);
 };
  
 export const leaveTime = function (value) {
   return moment(value).format("YYYY-MM-DD HH:mm");
 };
  
 // 短时间
 export const monthTime = function (value) {
   return moment(value).format("YYYY-MM");
 };
  
 // 短时间1
 export const monthTime1 = function (value) {
   return moment(value).format("YYYY/MM");
 };
  
 // 短时间2
 export const monthTime2 = function (value) {
   return moment(value).format("YYYY-MM-DD");
 };
  
 // 每月第一天
 export const monthOne = function (value) {
   return moment(value).format("YYYY-MM-01");
 };
 // 每月第一天精确
 export const monthOnes = function (value) {
   return moment(value).format("YYYY-MM-01 00:00:00");
 };
 // 补全00:00:00
 export const addZero = function (value) {
   return moment(value).format("YYYY-MM-DD 00:00:00");
 };
 // 月数
 export const MonTime = function (value) {
   return moment(value).format("MM");
 };
 // 天数
 export const dayTime = function (value) {
   return moment(value).format("DD");
 };
 // 时分秒
 export const secondsTime = function (value) {
   return moment(value).format("HH:mm:ss");
 };
  
 export const secondShortTime = function (value) {
   return moment(value).format("HH:mm");
 };
使用:
import { shortTime, time } from "@/utils/tool";
 let date =  new Date()          
     console.log(date)
     console.log(shortTime(date))      //短时间
     console.log(time(date))           //长时间