我的时间戳为:
1399043514913
实际上Fri, 02 May 2014 15:11:54 GMT
,但我得到了Sat, 05 Dec 46303 06:35:13 GMT
如何正确地将时间戳转换为Fri, 02 May
日期?
我正在尝试:
var dateTime = new Date(milliseconds * 1000);
var UTCString = new Date(dateTime).toUTCString();
我真正想要的是一个Date对象,我可以使用getDate()
,getMonth()
等,所以我可以将日期放在我喜欢的任何格式中。
或者我想要一种将1399043514913
转换为02/05/2014 15:11:54
更新
由于@JensB,
解决了问题这里是我的毫秒到目前为止的格式转换器:
function formatTimeStamp(milliseconds) {
if (typeof milliseconds === "string")
milliseconds = parseInt(milliseconds.match(/\d+/g)[0]);
var dateTime = new Date(milliseconds);
var dateVar = new Date(dateTime);
var ISOString = new Date(dateVar).toISOString();
var UTCString = new Date(dateVar).toUTCString();
function pad(s) { return (s < 10) ? ("0" + s) : s.toString(); }
var dateTimeParts = {
dd: pad(dateVar.getDate()),
MM: pad(dateVar.getMonth() + 1),
yyyy: dateVar.getFullYear().toString(),
yy: dateVar.getFullYear().toString().substring(2, 4),
HH: pad(dateVar.getHours()),
mm: pad(dateVar.getMinutes()),
ss: pad(dateVar.getSeconds())
};
var execute = function(string) {
for (var key in dateTimeParts)
string = string.replace(key, dateTimeParts[key]);
return string;
};
return {
ISOString: ISOString,
UTCString: UTCString,
date: execute("dd/MM/yyyy"),
time: execute("HH:mm"),
dateTime: execute("dd/MM/yy HH:mm:ss"),
dateTimeParts: dateTimeParts
};
}
答案 0 :(得分:3)
只运行此代码(与您的问题相同)
var dateTime = new Date(1399043514913);
var UTCString = new Date(dateTime).toUTCString();
alert(UTCString);
给我
2014年5月2日星期五15:11:54 GMT
根据评论编辑,这项工作?
$( document ).ready(function() {
var dateTime = new Date(1399043514913);
var dateVar = new Date(dateTime);
var UTCString = dateVar.toUTCString();
$("#dt").text(UTCString);
$("#dt2").text("Month: " + dateVar.getMonth());
$("#dt3").text("GetDate: " + dateVar.getDate());
});
Fiddler:http://jsfiddle.net/DqSGJ/3/