我有一个纪元时间:x = 1383483902000
我想得到一个日期,如:dd-mm-yyyy 并希望在没有额外库的情况下做到这一点。
我尝试了几种方法,我的最后一种方法最终如下:
var date = new Date(Math.round(Number(x)));
但我得到了一个丑陋的东西,比如:sun nov 03 2013 14:05:02 GMT+01:00
我有一个纪元时间:x = 1383483902000
我想得到一个日期,如:dd-mm-yyyy 并希望在没有额外库的情况下做到这一点。
我尝试了几种方法,我的最后一种方法最终如下:
var date = new Date(Math.round(Number(x)));
但我得到了一个丑陋的东西,比如:sun nov 03 2013 14:05:02 GMT+01:00
使用您的日期对象来提取/格式化您想要的部分:
var formattedDate = date.getUTCDate() + '-' + (date.getUTCMonth() + 1)+ '-' + date.getUTCFullYear()
下面的示例在处理纪元时间时使用日期对象的 UTC 方法(UTC 自纪元以来的毫秒数):
var formatDate = function formatDate(date) { // function for reusability
var d = date.getUTCDate().toString(), // getUTCDate() returns 1 - 31
m = (date.getUTCMonth() + 1).toString(), // getUTCMonth() returns 0 - 11
y = date.getUTCFullYear().toString(), // getUTCFullYear() returns a 4-digit year
formatted = '';
if (d.length === 1) { // pad to two digits if needed
d = '0' + d;
}
if (m.length === 1) { // pad to two digits if needed
m = '0' + m;
}
formatted = d + '-' + m + '-' + y; // concatenate for output
return formatted;
},
x = 1383483902000, // sample time in ms since epoch
d = new Date(x), // convert to date object
f = formatDate(d); // pass to formatDate function to get dd-mm-yyyy
console.log(f); // log output to console for testing
您可以按原样在浏览器控制台中运行它。