JavaScript的时间戳问题

Timestamp troubles with JavaScript

本文关键字:问题 时间戳 JavaScript      更新时间:2023-09-26

所以我只想知道一个日期是在今天之前还是在未来。所以基本上我有这样的结构:

function data(startdate, enddate)
{
    var that = this;
    start = startdate;
    end = enddate;
    var today = new Date();
    today = today.getTime();
    today = Date.parse(today);
    this.status = false; // True = Server is in maintenance
    this.init = function()
    {
        isDone();
    }
    function isDone(){
        if( Date.parse(start) < today && today < Date.parse(end))
        {       
            that.status = true;
            console.log(that.status);
        }else
        {
            that.status = false;
            console.log(that.status);
        }
    }
}

我这样称呼它:

var x1 = new Date(2013,2,23,12,3,45);
var x2 = new Date(2013,2,27,12,3,45);
var foobar = new data(x1,x2);
foobar.init();

因此,试图弄清楚javascript创建了什么:

start:1364036625000 
end: 1364382225000 
today: 1361796935000 

我还将其解析回标准格式:

start:Sat Mar 23 2013 12:03:45 GMT+0100 
end:Wed Mar 27 2013 12:03:45 GMT+0100 
today:Mon Feb 25 2013 13:54:56 GMT+0100

所以我不知道如何修复它,也不知道它如何工作。。。

您的问题没有明确说明,但您似乎忘记(或忽略(了javascript中的月份是零索引的。二月是1