【问题标题】:How can I convert the (fractional) result of `new Date().getTime() / 1000` into a whole number?如何将 `new Date().getTime() / 1000` 的(小数)结果转换为整数?
【发布时间】:2012-02-05 12:31:10
【问题描述】:

据此:Get current date/time in seconds

var seconds = new Date().getTime() / 1000; 为您提供以秒为单位的时间。但给出的时间是十进制数。我怎样才能把它变成整数?

【问题讨论】:

标签: javascript object date time


【解决方案1】:

圆它。

console.log(new Date().getTime() / 1000);
// 1326051145.787
console.log(Math.round(new Date().getTime() / 1000));
// 1326051146

基础数学!​​

【讨论】:

  • 谢谢。不知道 Math.round。
  • @jQuerybeast:谷歌注册于 1998 年。
  • @LightnessRacesinOrbit:哦,又是你。在这里,我认为您对上述第一条评论的态度是一次性的。
  • @gotnull:锅,见水壶。至少我正在尝试教这个 OP 进行研究,这将 无可争辩地帮助他作为一项技能。你只是在写 cmets 来攻击我的角色。
  • @LightnessRacesinOrbit:水壶,见壶。光顾某人根本没有帮助。我同意教人们(在这种情况下为 OP)进行研究,但是告诉他们谷歌是在 1998 年注册的,这对 IMO 完全没有帮助。我猜每个人都有自己的想法。
【解决方案2】:

最快最简单的: 通过直接对日期对象进行数学运算,强制将日期表示为数字。 在我们调用不带参数的构造函数时可以省略括号

new Date/1000|0  // => 1326184656

+new Date == new Date().getTime() // true

解释:

new Date // => Tue Jan 10 2012 09:22:22 GMT+0100 (Central Europe Standard Time)

通过申请+运营商

+new Date //=> 1326184009580

【讨论】:

    【解决方案3】:

    您可以使用Math.round(new Date().getTime() / 1000) 或简短(更快的版本):

    new Date().getTime() / 1000 | 0
    

    使用此二元运算符会将数字的浮点数部分归零(因此向下舍入)。

    【讨论】:

      【解决方案4】:

      致电Math.round

      【讨论】:

        猜你喜欢
        • 2019-09-05
        • 2023-04-08
        • 2010-09-26
        • 1970-01-01
        • 2013-07-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-04-01
        相关资源
        最近更新 更多