【问题标题】:javascript getTime() to 10 digits onlyjavascript getTime() 仅限 10 位数字
【发布时间】:2012-11-06 00:50:59
【问题描述】:

我正在使用以下函数通过 javascript 获取时间:

function timeMil(){
    var date = new Date();
    var timeMil = date.getTime();

    return timeMil;
}

而我得到的值是:

1352162391299

在 PHP 中,我使用 time(); 函数来获取时间,我得到的值是

1352162391

如何转换 javascript time 的值以删除最后 3 位数字并使其仅为 10 位数字。

从 1352162391299
到    1352162391
这样Javascript时间就和PHP时间一致了。

【问题讨论】:

  • 我使用的是 WAMP 服务器(development),这就是用户和服务器时间相同的原因。

标签: javascript datetime


【解决方案1】:

我认为您只需将其除以 1000 毫秒,您将获得以秒为单位的时间

Math.floor(date.getTime()/1000)

【讨论】:

  • 但是当滴答数超过一位时,这会失败吗?
【解决方案2】:

如果简洁可以,那么:

function secondsSinceEpoch() {
    return new Date/1000 | 0;
}

地点:

使用更新的功能,并允许将日期传递给函数,代码可以简化为:

let getSecondsSinceEpoch = (x = new Date) => x/1000 | 0;

但我更喜欢函数声明,因为我认为它们更清晰。

【讨论】:

  • 这很酷,但是解释一下 or'ing 与零的作用会有所帮助。
【解决方案3】:

尝试将其除以 1000,并使用 parseInt 方法。

const t = parseInt(Date.now()/1000);

console.log(t);

【讨论】:

    【解决方案4】:

    您可以除以 1000 并在 JavaScript 上使用 Math.floor()

    【讨论】:

      【解决方案5】:
      function ts() {
          return parseInt(Date.now()/1000);
      
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-07-22
        • 1970-01-01
        • 2012-05-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-05-25
        相关资源
        最近更新 更多