将UNIX时间戳差异转换为分钟

时间:2013-07-30 20:31:11

标签: javascript unix-timestamp

我有两个日期,我转换为UNIX时间戳 - 开始日期和确认日期。我从另一个中减去一个并得到这样的数字:

-12643, 0, 3037, 1509, -3069

基本上,我需要做的是在几分钟内获得两个日期之间的差异,但我不知道如何将这些日期转换为分钟。结束输出应该是:-25, 13, 155

3 个答案:

答案 0 :(得分:1)

给出两个UNIX时间戳:a,b;您可以在几分钟内计算它们之间的差异,如下所示:

var a = 1377005400000; //2013-07-20 15:30
var b = 1377783900000; //2013-07-29 15:45 

var dateA = new Date(a);
var dateB = new Date(b);

var dayRelativeDifference =   dateB.getHours()*60 + dateB.getMinutes()
                            - dateA.getHours()*60 - dateA.getMinutes();
//  dayRelativeDifference will be 15

var absoluteDifference    = (b-a)/60
//  absoluteDifference will be 12975000

另请查看http://www.w3schools.com/jsref/jsref_obj_date.asp

答案 1 :(得分:0)

你是如何获得原始数字的?我相信标准的Unix时间戳是以秒为单位的,所以你应该能够除以60来获得分钟。但是,例如,JavaScript中的Date.now()返回毫秒,因此您需要除以60,000。

答案 2 :(得分:0)

您只需要除以60.您已经有两个时间戳之间的差异,因此上述日期开销都不是必需的:

var diffs = new Array(-12643, 0, 3037, 1509, -3069);
for (var i = 0; i < diffs.length; i++)
    document.write(diffs[i] % 60);
相关问题