javascript 关于时间戳的那些事

/**
* 获取当前时间戳
* @type {number}
*/
//Date.now()方法返回自1970年1月1日00:00:00 UTC以来经过的毫秒数。

//这种方法只能精确到秒
let timestamp = Date.parse(new Date());

//这两种方法精确到毫秒
let timestamp = (new Date()).valueOf();
let timestamp=new Date().getTime();




//时间戳转换成时间格式
/**
* 看date是几位数,如果是13位的时候能直接用,如果不是要 *1000
* @returns {string}
*/
function timetrans() {
let date = Date.parse(new Date());
let Y = date.getFullYear() + '-';
let M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-';
let D = (date.getDate() < 10 ? '0' + (date.getDate()) : date.getDate()) + ' ';
let h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':';
let m = (date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes()) + ':';
let s = (date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds());
return Y + M + D + h + m + s;
}



/**
* 获取单个的年月日时分秒
*/
let date = new Date(时间戳); //获取一个时间对象
let yera = date.getFullYear(); // 获取完整的年份(4位,1970)
let momth = date.getMonth() + 1; // 获取月份(0-11,0代表1月,用的时候记得加上1)
let day = date.getDate(); // 获取日(1-31)
let hour = date.getHours(); // 获取小时数(0-23)
let minute = date.getMinutes(); // 获取分钟数(0-59)
let second = date.getSeconds(); // 获取秒数(0-59)



/**
* 日期转换成时间戳
* @type {string}
*/
let strtime = '2014-04-23 18:55:49:123';
let date = new Date(strtime);
//传入一个时间格式,如果不传入就是获取现在的时间了,这样做不兼容火狐。
// 可以这样做
let date = new Date(strtime.replace(/-/g, '/'));

// 有三种方式获取,在后面会讲到三种方式的区别
let time1 = date.getTime(); //1398250549123
let time2 = date.valueOf(); //1398250549123
let time3 = Date.parse(date); //1398250549000

猜你喜欢

转载自www.cnblogs.com/doing-good/p/10795501.html