Date.UTC() gets value null

Date.UTC() gets value null

本文关键字:value null gets UTC Date      更新时间:2024-06-05

从服务器获取UTC格式的日期,如

2016-04-13T02:37:13.211316121-04:00 

当我使用这个来使用new Date(data.Created_at)显示时,我得到了7分钟的时间差。就像我以格式{{my_date|date:'h:mm a'}}显示我的日期一样,它不显示12:05 PM,而是显示11:58 AM。所以我试过了,

data.Created_at = new Date(Date.UTC(data.Created_at))

返回CCD_ 4值。我的代码有问题吗?我该如何获得完美的约会?

如果检查Date.UTC、的语法

日期。UTC(年、月[、日[、小时[、分钟[、秒[、毫秒]]]])

它需要不同变量中的值,而不是日期字符串中的值。您可以将其拆分并手动解析。

你可以试试这样的东西:

JSFiddle

var d = "2016-04-13T02:37:13.211316121-04:00";
var date_arr = d.split(/[-|T|'.|:]/);
var o = new Date(Date.UTC(date_arr[0], date_arr[1], date_arr[2], date_arr[3], date_arr[4], date_arr[5]));
console.log(date_arr, o);

此外,考虑到时间是2:37,而我的时区是+5:30,它给了我8:07 AM

像这样使用

Date.UTC(year,month,day,hours,minutes,seconds,millisec)

您使用的代码是处理日期的无效方式。你可以使用这个代码

new Date('2016-04-13T02:37:13.211316121-04:00').toISOString();
    var created_at = new Date(createdAt);
var created_at_date = (created_at.getUTCMonth()+1) + "/" + created_at.getUTCDate() + "/" + created_at.getUTCFullYear() + "/" + created_at.getHours() + ":" 
+ created_at.getMinutes() + ":" + created_at.getSeconds();

希望这对你有用!!!