在jQuery中使用$ .now()的时间戳错误

时间:2013-10-23 08:57:30

标签: jquery

使用这个时,jquery得到了13位数的时间戳,而不是10位数的时间戳:

var timestamp = $.now();
alert(timestamp);

结果是 1382518196714 ,这是13位而不是10位数。

如何使用jquery获取正确的时间戳?

3 个答案:

答案 0 :(得分:3)

JavaScript时间戳显示自纪元以来的毫秒而不是秒。

因此:

1382518196714 milliseconds

d = new Date( 1382518196714 );

会给:

Wed Oct 23 2013 08:49:56 GMT+0000

答案 1 :(得分:3)

$.now() === (new Date).getTime()
  

getTime方法返回的值是自1970年1月1日00:00:00 UTC以来毫秒的数量。您可以使用此方法来帮助为另一个Date对象指定日期和时间。

换句话说,$.now()/1000就是您所追求的目标。

getTime()

答案 2 :(得分:1)

<强> Live Demo

使用这个javascript函数:

function formatTimeOfDay(millisSinceEpoch) {
  var secondsSinceEpoch = (millisSinceEpoch / 1000) | 0;
  var secondsInDay = ((secondsSinceEpoch % 86400) + 86400) % 86400;
  var seconds = secondsInDay % 60;
  var minutes = ((secondsInDay / 60) | 0) % 60;
  var hours = (secondsInDay / 3600) | 0;
  return hours + (minutes < 10 ? ":0" : ":")
      + minutes + (seconds < 10 ? ":0" : ":")
      + seconds;
}

$(function () {
    alert(formatTimeOfDay($.now()));
});