当前日期的UTC秒应该给出使用这些UTC秒再次转换为日期的UTC日期。

时间:2012-01-24 14:05:15

标签: javascript html

当我使用UTC()函数获取纪元时间(1970年1月1日)的总秒数时。但是再次使用“new Date(milliseconds)”构造函数将相同的秒转换为Date并不给出UTC日期。 (按照UTC时间的第二次)。

我在印度(格林尼治标准时间+05:30) 以下是我的Html文件

<html>
 <head>
   <title>GMT Calculator</title>
   <script type="text/javascript">
     function calcGMT(form) {
     var dt = new Date(); 
     var sc =Date.UTC(dt.getFullYear(),dt.getMonth(),dt.getDate(),dt.getHours(),dt.getMinutes(),dt.getSeconds()) ;
alert("date is "+new Date(sc));
}

window.onload = calcGMT;
</script>
</head>
<body>
</body>
</html>

我还发现有一件事情是“日期是2012年1月25日星期三01:02:17格林尼治标准时间+ 0530(印度标准时间)”时间19:32,这比当前时间早5:30 。我不明白发生了什么。它应该根据函数“toUTCString()”提供UTC日期字符串的时间。星期二,2012年1月24日格林威治标准时间14:02:17比当前时间少5:30。

先谢谢!!

2 个答案:

答案 0 :(得分:0)

如果在编写日期字符串时未指定UTC,则会在当地时间获取字符串。

alert("date is "+new Date(sc).toUTCString());

答案 1 :(得分:0)

就像有人挣扎于糟糕的Date API一样,我建议DateJS