我想要一个表示当前日期和时间的数字,比如Unix时间戳。


当前回答

在JavaScript中获取时间戳

在JavaScript中,时间戳是自1970年1月1日以来经过的毫秒数。如果您不打算支持<IE8,可以使用

new Date().getTime(); + new Date(); and Date.now();

直接获取时间戳,而无需创建新的Date对象。

返回所需的时间戳

new Date("11/01/2018").getTime()

其他回答

除了其他选项,如果您想要日期格式ISO,可以直接获取

console.log(newDate().toISOString());

前几天,我从JQueryCookie的源代码中学习了一种将给定的Date对象转换为Unix时间戳的非常酷的方法。

下面是一个示例:

var date = new Date();
var timestamp = +date;

简单来说,这里有一个函数可以在Javascript中返回时间戳字符串。示例:下午15:06:38

function displayTime() {
    var str = "";

    var currentTime = new Date()
    var hours = currentTime.getHours()
    var minutes = currentTime.getMinutes()
    var seconds = currentTime.getSeconds()

    if (minutes < 10) {
        minutes = "0" + minutes
    }
    if (seconds < 10) {
        seconds = "0" + seconds
    }
    str += hours + ":" + minutes + ":" + seconds + " ";
    if(hours > 11){
        str += "PM"
    } else {
        str += "AM"
    }
    return str;
}

我还没见过

Math.floor(Date.now() / 1000); // current time in seconds

另一个我还没看到的是

var _ = require('lodash'); // from here https://lodash.com/docs#now
_.now();

有很多方法可以做到这一点。

 Date.now() 
 new Date().getTime() 
 new Date().valueOf()

要获取以秒为单位的时间戳,请使用以下方法进行转换:

Math.floor(Date.now() / 1000)