今天在做项目的时候遇到可需要在时间戳和日期之间转换的问题。忙了很长时间,这里总结记录一下。
首先,我们来了解一下js里面的Date对象。Date对象是JavaScript提供的日期和时间的操作接口。它有多种用法。
1.new Date(milliseconds):Date对象接受从1970年1月1日00:00:00 UTC开始计算的毫秒数作为参数。这意味着如果将Unix时间戳作为参数,必须将Unix时间戳乘以1000。
UNIX时间戳:是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,注意是秒,而date对象接收的是毫秒。
2.new Date("2013-02-15 21:00:00");
对象接收一个标准的日期格式字符串,将其转换成对应时间:
3.date.getTime();
返回是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数;
所以我们获取以字符串形式给予的日期的时间戳如下:
var date = new Date("2013-02-15 21:00:00");我们再将其转换成日期格式的:
var time = date.getTime()/1000;//转换成秒;
var date = new Date( time * 1000 );//.转换成毫秒输出:
var time = date.getFullYear() + "-" + (date.getMonth() < 10 ? '0' + (date.getMonth()+1) : (date.getMonth()+1)) + "-" + (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) ;
可以看到,最后一行把日期时间输出了!
那么如何或得当前时间的时间戳呢?其实也很简单!
Date.now()获取当前时间的时间戳,输出是毫秒。