JavaScript - 将时间转换为整数和整数转换为时间

9
这是我在Ruby中所做的事情。
time = Time.now
=> 2013-10-08 12:32:50 +0530
time.to_i //converts time to integer
=> 1381215770
Time.at(time.to_i) //converts integer to time
=> 2013-10-08 12:32:50 +0530

我正在尝试用Node.js实现同样的功能,但不确定如何操作。请帮我找到一个可以使用Node.js和JavaScript实现该功能的模块。谢谢!
3个回答

20
在JavaScript的世界里。
Date.now()

and

new Date(1381216317325);

4
需要注意的是,在JavaScript中,日期被存储为自1970年1月1日00:00:00 UTC以来的毫秒数(Unix纪元),通常只有秒数(在Ruby中)。若需要将任何日期对象转换为整数,应使用Date.getTime()方法。同时,需要注意Date.now()只返回实际时间。 - ivoszz
@ivoszz Date().getTime() 不是 Date.getTime()! - user3156040

6
除了用户10的答案外
Date.parse("2013-10-08 12:32:50 +0530");

将会得到一个整数时间

编辑
Date API


我非常需要这个。谢谢! - Srikanth Jeeva

2
new Date().getTime(); 

将返回一个整数,表示自1970年1月1日UTC午夜以来花费的毫秒数。需要以某种方式解析它以使其更易于人类阅读。

Javascript中没有默认方法可以将此数字转换为可读的日期,因此您必须自己编写。

一个简单的方法是:

function getTime() {
    var now = new Date();
    return ((now.getMonth() + 1) + '-' +
            (now.getDate()) + '-' +
             now.getFullYear() + " " +
             now.getHours() + '-' +
             ((now.getMinutes() < 10)
                 ? ("0" + now.getMinutes())
                 : (now.getMinutes())) + ':' +
             ((now.getSeconds() < 10)
                 ? ("0" + now.getSeconds())
                 : (now.getSeconds())));
}

console.log(getTime());

您可以自行调整出现顺序。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接