我需要计算应用日期和事件日期之间的天数

时间:2013-03-15 19:19:40

标签: javascript date

我们正在设计在线许可申请

我需要计算事件日期和应用日期之间的天数 活动日期为9月16日和12月31日。

计算天数的Java脚本

2 个答案:

答案 0 :(得分:0)

使用Javascript Date Object,您可以使用以下功能:

var firstDate = new Date("October 16, 1975 11:13:00");
var secondDate = new Date("October 14, 1975 11:13:00");


function dateDifference(start, end)
{
    return Math.round((start-end)/(1000*60*60*24));
}

alert(dateDifference(firstDate.getTime(), secondDate.getTime()));

答案 1 :(得分:0)

另一种方法是比较日期,直到它们相同。可能要慢得多,所以除非你想用额外的细节扩展比较,否则不要使用它。

小提琴:http://jsfiddle.net/rudiedirkx/Szvfd/

Date.prototype.getYMD = function() {
    return this.getFullYear() + '-' + (this.getMonth()+1) + '-' + this.getDate();
};

Date.prototype.getDaysDiff = function(d2) {
    var d1 = this,
        delta = d1 < d2 ? +1 : -1;

    var days = 0;
    while (d1.getYMD() != d2.getYMD()) {
        days++;
        d1.setDate(d1.getDate() + delta);
    }
    return delta * days;
}

d1 = new Date('October 16 2012');
d2 = new Date('November 7 2012');

console.log(d1.getDaysDiff(d2)); // 22
console.log(d2.getDaysDiff(d1)); // -22