前戏
时间戳获取方法总结
1.方法一:精确到秒
var timeStamp1 = Date.parse(new Date())
解释:Date.parse()方法可解析一个日期时间字符串,并返回 1970/1/1 午夜距离该日期时间的毫秒数。然而Date()方法虽然本身是当前时间到1970年1月1日00点00分00秒000毫秒数,但是在显示时会只展示到秒,因此上方法只能精确到秒。
2.方法二:精确到毫秒
var timeStamp1 = (new Date()).valueOf()
解释:valueOf()方法返回指定对象的原始值,这里返回了new Date()的原始值,即当前时间到1970年1月1日00点00分00秒000毫秒数。
3.方法三:精确到毫秒
var timeStamp3 = (new Date()).getTime()
解释:getTime() 方法,表示从1970年1月1日0时0分0秒(UTC,即协调世界时)距离该日期对象所代表时间的毫秒数。
时间轴转换方法
function timetrans(date){
var date = new Date(date*1000);//如果date为13位不需要乘1000
var Y = date.getFullYear() + '-';
var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';
var D = (date.getDate() < 10 ? '0' + (date.getDate()) : date.getDate()) + ' ';
var h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':';
var m = (date.getMinutes() <10 ? '0' + date.getMinutes() : date.getMinutes()) + ':';
var s = (date.getSeconds() <10 ? '0' + date.getSeconds() : date.getSeconds());
return Y+M+D+h+m+s;
}
正文开始
// 将UTC时间通过偏移量转为本地时间
// 本地 = utc - 偏移量
解释:getTimezoneOffset() 方法返回的是本地时间与 GMT 时间或 UTC 时间之间相差的分钟数。实际上,该函数告诉我们运行 JavaScript 代码的时区,以及指定的时间是否是夏令时。
返回之所以以分钟计,而不是以小时计,原因是某些国家所占有的时区甚至不到一个小时的间隔。
export const toLocaleTime = function(utcTime,secondTrue) {
const d = new Date();
const localOffset = d.getTimezoneOffset() * 60000; //getTimezoneOffset()返回是以分钟为单位,需要转化成ms
const localeTime = utcTime - localOffset;
const date = new Date(localeTime);
const Y = date.getFullYear() + '-';
const M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';
const D = (date.getDate() < 10 ? '0' + (date.getDate()) : date.getDate());
const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':';
const m = (date.getMinutes() <10 ? '0' + date.getMinutes() : date.getMinutes()) + ':';
const s = (date.getSeconds() <10 ? '0' + date.getSeconds() : date.getSeconds());
if(secondTrue){
return (
Y+M+D+' '+h+m+s
);
}else{
return (
Y+M+D
);
}
};







网友评论