vue获取本地时间(vue使用moment插件,根据指定时间获取时间戳)
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)) //长时间创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!