获取当前时间戳
var timestamp = Date.parse(new Date());
console.log(timestamp)
根据两个时间戳,计算相隔多少天
var start=1491789600000;//2017-4-10 10:00
var end=1494381600000;//2017-5-10 10:00
var utc = end - start;
utc/(24*60*60*1000)// 天
utc/(60*60*1000);//小时
utc/(60*1000); // 分
计算两个日期之间相隔多少天,分,秒
dateDiff(d1,d2){
d1 = new Date(d1.replace(/-/g,'/'));
d2 = new Date(d2.replace(/-/g,'/'));
var obj={},M1=d1.getMonth(),D1=d1.getDate(),M2=d2.getMonth(),D2=d2.getDate();
obj.Y=d2.getFullYear() - d1.getFullYear() + (M1*100+D1 > M2*100+D2 ? -1 : 0);
obj.M=(obj.Y > 0 ? obj.Y * 12 : 12) + M2 - M1 + (D1 > D2 ? -1 : 0);
obj.s=Math.floor((d2-d1)/1000);//差几秒
obj.m=Math.floor(obj.s/60);//差几分钟
obj.h=Math.floor(obj.m/60);//差几小时
obj.D=Math.floor(obj.h/24);//差几天
return obj
}
console.log(this.dateDiff('2021-05-01','2020-05-10'))
获取当前日期
var start = new Date();
var year = start.getFullYear(); //获取当前年
var mon = start.getMonth() + 1; //获取当前月
var date = start.getDate(); //获取当前日
var h= start.getHours(); //获取当前时
var s = start.getMinutes(); //获取当前分
console.log(year + "年" + mon + "月" + date + "日" + h + "时" + s + "分")
时间戳转日期
/**
* 时间戳转化为年 月 日 时 分 秒
* number: 传入时间戳
* format:返回格式,支持自定义,但参数必须与formateArr里保持一致
*/
function formatTime(number,format) {
var formateArr = ['Y','M','D','h','m','s'];
var returnArr = [];
var date = new Date(number * 1000);
returnArr.push(date.getFullYear());
returnArr.push(formatNumber(date.getMonth() + 1));
returnArr.push(formatNumber(date.getDate()));
returnArr.push(formatNumber(date.getHours()));
returnArr.push(formatNumber(date.getMinutes()));
returnArr.push(formatNumber(date.getSeconds()));
for (var i in returnArr)
{
format = format.replace(formateArr[i], returnArr[i]);
}
return format;
}
//数据转化
function formatNumber(n) {
n = n.toString()
return n[1] ? n : '0' + n
}
// var sjc = 1488481383;//时间戳
// console.log(formatTime(sjc,'Y/M/D h:m:s'));// 转换为日期:2017/03/03 03:03:03
// console.log(formatTime(sjc, 'h:m'));// 转换为日期:03:03
获取七天前/七天后的日期
function get_date(time){
var date1 = new Date(),
time1 = date1.getFullYear()+"-"+(date1.getMonth()+1)+"-"+date1.getDate();//time1表示当前时间
var date2 = new Date(date1);
date2.setDate(date1.getDate()+time);
var time2 = date2.getFullYear()+"-"+(date2.getMonth()+1)+"-"+date2.getDate();
return time2;
}
console.log(get_date(7))//七天后
console.log(get_date(-7))//七天前
年月日转标准时间
new Date('2021-04-28 16:00').getTime()
标准时间转时间戳
let time = new Date(time);//time 为中国标准时间
console.log(time.getTime() / 1000)//得到时间戳
获取某个时间戳,两个小时前和两个小时后的时间
let now_timestamp = Date.parse(new Date())/1000; //当前时间
let before_time = ( now_timestamp - 2 * 60 * 60);//两个小时前
let after_time = ( now_timestamp + 2 * 60 * 60);//两个小时后
console.log('当前时间戳:'+now_timestamp);//2021-05-15 12:50:00
console.log('两个小时前:'+before_time);//2021-05-15 10:50:00
console.log('两个小时后:'+after_time);//2021-05-15 14:50:00
获取当前日期是星期几
let start = new Date();
this.year = start.getFullYear(); //年
this.mon = start.getMonth() + 1; //月
this.day = start.getDate(); //日
if(start.getDay() == 0){
this.week = '星期日';
}else if(start.getDay() == 1){
this.week = '星期一';
}else if(start.getDay() == 2){
this.week = '星期二';
}else if(start.getDay() == 3){
this.week = '星期三';
}else if(start.getDay() == 4){
this.week = '星期四';
}else if(start.getDay() == 5){
this.week = '星期五';
}else if(start.getDay() == 6){
this.week = '星期六';
}
时间判断,当前是上午还是下午
var date = new Date();
var hour = date.getHours();
if (hour < 10) {
this.showTime = "上午";
} else if (hour < 12) {
this.showTime = "中午";
} else if (hour < 18) {
this.showTime = "下午";
} else {
this.showTime = "晚上";
}