如何转换看起来像的日期时间:
' Thu Jul 09 2015 08:00:00 GMT + 0300(GTB Daylight Time)'
到像这样的日期 ' DD-MM-YYYY' - 即' 09-07-2015'?
(最好不使用特殊库)
答案 0 :(得分:4)
您需要考虑时区的影响。一个简单的实现可能是这样的
function myDateFormat(d) {
var dd = d.getDate(),
mm = d.getMonth() + 1,
yyyy = d.getFullYear();
if (dd < 10) dd = '0' + dd;
if (mm < 10) mm = '0' + mm;
return dd + '-' + mm + '-' + yyyy;
}
var d = new Date('Thu Jul 09 2015 08:00:00 GMT+0300 (GTB Daylight Time)');
myDateFormat(d); // "09-07-2015" (in client's local timezone)
但是,请注意,不同时区的某人可能会在GMT + 0300的日期与日期不同
如果您的目的是显示您的时区的日期,那么您需要知道您的时区与 UTC 的偏差(发送时间)使用 datetime ,您可以按此值调整UTC时间,并在此修改后输出 Date 计算的 UTC 时间。< / p>
function myDateFormat(d_in, offset) {
var d = new Date(+d_in - 60000 * offset);
dd = d.getUTCDate(),
mm = d.getUTCMonth() + 1,
yyyy = d.getUTCFullYear();
if (dd < 10) dd = '0' + dd;
if (mm < 10) mm = '0' + mm;
return dd + '-' + mm + '-' + yyyy;
}
您的偏移量为-180
( GMT + 0300 提前{em}}分钟 3 * 60
-